본문 바로가기

전체 글256

백준 10870번 자바 피보나치 수 5 [재귀] n을 입력한다. 피보나치 수열에서 n번째 수는 몇 인지 출력하는 프로그램이다. Fn = Fn-1 + Fn-2 이렇게 공식도 친절히 나와있다. 즉 5번째 수는 4번째 + 3번째 라는 의미이다. 그럼 4번째 수와 3번째 수를 알아야 한다. 4번째는 3번째 +2번째 이며 2번째는 0번째 + 1번째이다. 0번째는 0이고 1번째는 1이다. 이렇게 n을 입력하고 -1, -2 쭉쭉해서 0번째와 1번째에서 0과 1을 리턴하면서 더하고 더하고 더해서 최종 리턴하면 n번째 피보나치 수를 구할 수 있다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 import java.util.Scanner; public class Main{ public static void .. 2021. 6. 6.
백준 10872번 자바 팩토리얼 [재귀] 수학2를 마치고 재귀 문제에 들어갔다. 재귀.. 함수가 함수를 호출하고 호출하고 호출하고 리턴하고 리턴하고 리턴하는 생각하기 너무 귀찮은 뭐 그렇다. 팩토리얼 프로그램을 작성하는 것이다. 참고로 팩토리얼은 ! 로 표시하는데 3! 이면 1 * 2 * 3 = 으로 6 이다. 5! 은 1*2*3*4*5 이다. 첫 줄에 n을 입력하면 n!을 출력하면 된다. 1*2* ... * n을 출력하면 되는데 그럼 간단하게 for문으로도 작성할 수 있다. [for 문] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 import java.util.Scanner; public class Main{ public static void main(String[] args){ Scanner sc = new Sca.. 2021. 6. 3.
백준 1002번 자바 터렛 [기본수학2] x1, y1 좌표를 입력하고 류재명과의 거리 r1 마찬가지로 x2, y2, r2를 입력한다. 류재명이 있을 수 있는 위치의 개수를 출력하는 프로그램이다. x1, y1 좌표에서 r1을 반지름으로 원을 그리고 x2, y2에서 r2로 원을 그리고 두 원이 만나는 점이 류재명이 있을 수 있는 위치이다. 경우의 수를 살펴보면 네 가지가 있다. 두 원이 아예 만나지 않는 경우 (두 점 사이의 거리보다 r1+r2값이 작은경우, r1, r2의 차이가 거리보다 큰 경우) 한 점이 만나는 경우 (r1+r2가 거리랑 일치하는 경우, r1, r2의 차이가 거리랑 같은 경우) 무한대인 경우 (다 같은 값인 경우) 두 점이 만나는 경우 (앞에 조건을 다 넣고 이거는 else로 편하게 ㅎ) 1 2 3 4 5 6 7 8 9 10 1.. 2021. 5. 20.
백준 3053번 자바 택시 기하학 [기본수학2] 원의 넓이를 유클리드 기하학과 택시 기하학 두 가지 구하라는 문제다. 유클리드 기하학의 원의 넓이는 그 유명한 파이알의제곱 PI*r^2 이다. 택시 기하학에서의 두 점 사이의 거리는 바둑판 같은 좌표 평면에서의 거리를 의미한다. 즉 반지름이 2라면 파란점 기준에서 빨간점까지의 거리가 택시기하학상 원의 반지름인 것이다. 검은선이 반지름이고 그것을 계속 찍다 보면 오른쪽그림처럼 마름모꼴 정사각형이 된다. 저 마름모의 넒이를 구하면 되는데 우리에게 주어진것은 r의 길이 => 이등변삼각형을 구하고 * 2 를 하면 된다. 이등변 삼각형은 밑변의 절반 * 높이를 하면 되고 거기에 2를 곱하면 마름모의 넓이가 된다. => r * r 2 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 .. 2021. 5. 12.
백준 4153번 자바 직각삼각형 [기본수학2] 직각삼각형 문제다. 세 변의 길이를 입력하고 이 삼각형이 직각인지 아닌지 출력해주면 된다. 직각삼각형하면 피타고라스짱의 공식을 이용하면 된다. a^2 + b^2 = c^2 아주 간단하게 짜면 if(a*a + b*b == c*c){ System.out.println("right"); } 이렇게 하면 끝이다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 import java.util.Scanner; public class Main { //baekjoon 4153번 직각삼각형 기본수학2 public static void main(String[] args){ Scanner sc = ne.. 2021. 5. 11.
백준 3009번 JAVA 네 번째 점 [기본 수학2] 1 2021. 5. 11.
[DBeaver] 무료 여러 DB 접속 툴 DBeaver 설치 및 마리아DB 연동 여러 db 접속 툴이 있다. 사용하는 db에 따라 종류도 여러가지지만 귀찮고 귀찮을 때 하나 설치해놓으면 여러 db를 연동할 수 있는 툴이 DBeaver 이다. 제목에는 마리아DB로 쓰여있지만 내가 사용할 것이고 오라클, mysql, mssql 등등 다양한 DB랑 접속할 수 있다. 아래 링크를 들어간다. dbeaver.io/download/ Download | DBeaver Community Download Tested and verified for MS Windows, Linux and Mac OS X. Install: Windows installer – run installer executable. It will automatically upgrade version (if needed). MacOS .. 2021. 5. 7.
[HTML/CSS] 시작 <head> <body> <h> <p> <a> 맛보기 HTML 에이치티엠엘 HyperText Markup Language 있어보이려면 알아둬도 좋지만 몰라도 상관없다. 아무튼 웹페이지를 그리는 언어이며 이 블로그 또한 HTML언어로 이루어져 있다. 더럽게 하기 싫은 공부지만 하나하나 차분히 해보려 한다. VS Code로 html공부를 할 것이므로 없으면 설치하길 권장. 다른 툴도 있지만 널리 주로 쓰이는 툴을 사용하는게 편하다. VS Code에서 우선 .html파일을 생성한다. 그리고 html:5 를 입력하고 여기서 tab 을 누르면 이쁘장한 기본 틀이 완성된다. 크게 보면 태그와 태그가 있다. 머리와 몸이다. 이 태그들을 태그가 감싸고 있다. 그렇구만.. html에는 자바 스크립트, css 등등도 작성을 하는데 보통 head에 작성한다. 물론 body에 .. 2021. 5. 7.
HTML&CSS Visual Studio Code 기본 설정 (쓸만한 확장 설치) 응당... 웹개발자라 함은 퍼블이 아니라 하더라도 기본적인 html/css는 알아야 한다. 그래야 하지만 제일 귀찮다고 생각하기도 한다. 아니 뭐 씨 프로그래밍은 오류라도 띠용해서 이거 안됨! 이러는데 html/css는 아니 나 그렇게 안될껀데? 하면서 이유도 안알려주고 괘씸하게 적용이 안된다. 뭐 아무튼 어떻게든 이리저리해보면 되겠지만.... 아무튼 html/css 공부를 시작하기 전에~ VS code를 설치하면 된다. code.visualstudio.com/ Visual Studio Code - Code Editing. Redefined Visual Studio Code is a code editor redefined and optimized for building and debugging moder.. 2021. 5. 6.
백준 1085 자바 직사각형에서 탈출 [기본수학2] 사각형이 있다. 요렇게 생긴 사각형인데 x, y, w, h 를 입력하고 x, y 에서 직사각형의 변 중에 가장 가까운 경계선을 구하는 프로그램을 작성해야 한다. 저 빨간선 중 가장 짧은 거리를 구하면 된다. (삐뚤빼뚤은 ㅈㅅ.. ㅎ) 그림상에서 거리로만 보면 위로 향한 선이 가장 최솟값이다. 그 값은 어떻게 찾을 수 있을까? h-y 이다. 아주 간단하게 풀 수 있다. 위(h-y) 아래(y) 중 작은값과 오른쪽(w-x) 왼쪽(x) 중 작은값을 비교해서 가장 작은 값을 출력하면 끝이다. width = (w-x) < x ? w-x : x 이렇게 삼항연산자로 width 작은값 height 작은값을 구해보자. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 2.. 2021. 5. 6.
백준 9020번 자바 골드바흐의 추측 [기본수학2] 푼지 좀 되서 기억은 잘 가물치지만 수학2의 문제는 대부분 소수 문제 인듯 싶다.. 음 지겨워 아무튼 요약! 1. 2보다 큰 모든 짝수는 두 소수의 합으로 나타낼 수 있다. 그 두 수의 표현을 골드바흐 파티션이라고 한다. 2. n의 골드바흐 파티션을 출력하는 프로그램을 작성. 가능한 경우가 여러가지면 두 소수의 차이가 가장 작은 것을 출력 3. 테스트 케이스 T 입력 T 만큼 짝수 n입력 간단하쥬? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 import java.util.Scanner; public class Main { //baekjoon 9020 골드바흐의 추측 .. 2021. 5. 5.
백준 4948번 자바 베르트랑 공준 [기본수학2] 에라토스테네스의 체 문제가 개떡같이 길게 쓰여 있지만 간단하게 풀면 n을 입력하면 n보다 크고 2n보다 작은 소수의 개수를 출력하는 문제이다. 0을 입력할 때 까지 계속 반복하면 끝~ 저번 소수문제와 같이 이렇게 범위가 주어지고 소수를 구하는 문제는 에라토스테네스의 체 방법을 이용하면 된다. 마찬가지로 같은 방법을 이용해서 풀어보도록 하자. hellodoor.tistory.com/114 백준 2581번 자바 소수 [기본 수학2] 에라토스테네스의 체 간단하다. m, n 두 수를 입력 후 m과 n 사이의 소수의 합을 출력하고 가장 작은 소수를 출력하면 된다. 여기서는 에라토스테네스 체 방법을 이용해서 문제를 풀어본다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 hellodoor.tistory.com 에.. 2021. 5. 4.
[C언어 기초-03] 데이터 입출력 1. printf() 저번 시간에 대애충 데이터 변수와 자료형, 선언과 초기화 하는 방법을 알아보았다. 쌈박한 복습을 해보자면 int number; //int 자료형 변수 number 선언 number = 10; //변수 number 10으로 초기화 이렇게 사용하면 된다. 뭐 자세하게는 실습하다보면 자연스레 몸에서 익혀질 것이고.. 이번에는 데이터 입출력 함수에 대해서 알아본다. 1. 표준 입출력 함수 C언어는 컴파일러에 의해 제공되는 표준 라이브러리 함수가 있다. 이 라이브러리를 사용하기 위해서는 헤더파일을 명시해 줘야 한다. 헤더 파일에는 , , 등이 있다. 입출력 함수는 stdio.h에 정의되어 있어 이것을 상단에 적어준다. #include 이렇게 선언해주면 된다. 그럼 이제 표준 입출력 함수를 사용할 준비가 끝났다. .. 2021. 4. 29.
방송&녹화 툴 유튜브&트위치 하기 obs studio 설치 뭐 방송을 하거나 유튜브를 하진 않지만 계획중에 있기 때문에 경험이 있었던 OBS Studio 툴을 설치한다. 아래 링크에서 받을 수 있다. obsproject.com/ko Open Broadcaster Software | OBS 영상 녹화와 실시간 방송을 할 수 있는 무료 및 공개 소프트웨어입니다. 윈도우, 맥 혹은 리눅스 환경에서 빠르고 쉽게 방송 할 수 있습니다. obsproject.com 설치 방법은 너무 쉽고 간단하다 그냥 나온대로만 하면 끝 자기 운영체제에 맞는 버전을 설치하면 된다. 난 윈도우니까 윈도우로 Setup파일을 다운받고 실행시킨다. Next > Next > 경로는 원하는대로 설정하고 난 이런저런 귀찮아서 대부분 경로는 그대로 둔다. Install 영차 영차 Finish~ 구성 마법.. 2021. 4. 29.
백준 1929번 자바 JAVA 소수 구하기 [기본수학2] 그놈의 소수문제 지긋지긋한 소수문제 많이 풀어봐서 이제 너무 쉬운 소수문제다. 이 문제는 저번에 푼 문제랑 그냥 저냥 똑같다. M N범위를 입력하면 그 사이의 소수를 구하는 문제이다. 저번에 에라토스테네스 체 방법을 이용해서 푼 적이 있는데 똑같이 풀어보았다. 아래는 그때 풀이 링크~ hellodoor.tistory.com/114 백준 2581번 자바 소수 [기본 수학2] 에라토스테네스의 체 간단하다. m, n 두 수를 입력 후 m과 n 사이의 소수의 합을 출력하고 가장 작은 소수를 출력하면 된다. 여기서는 에라토스테네스 체 방법을 이용해서 문제를 풀어본다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 hellodoor.tistory.com 1 2 3 4 5 6 7 8 9 10 1.. 2021. 4. 29.
백준 11653번 JAVA 소인수분해 [기본 수학2] 정수를 입력하면 소인수분해 하는 프로그램을 작성하면 되는 아주 간단한... 수학을 놓은지 어언.. 몇 년이냐.. 소인수분해 듣기는 했는데 정의가 정확하게 뭐였는지 까먹었당.. 그래서 구선생에게 물어보았다. 아하! 어떤 수를 소수들의 곱으로 나타내게 쪼개고 쪼개는 뭐 그런 작업이었다. 이것을 중학생 때? 배웠던가 아무튼 어렴풋한 기억이 있는데 암산으로 마구 코딩을 하기전에 먼저 손으로 소인수분해를 해보고 코드를 작성해보았다. 입력한 정수가 12 라면 우리는 소인수분해를 이렇게 할 것이다. 만약 72를 입력한다면? 소인수분해 정의도 기억이 잘 안 났지만 손으로 해보니 아주 자유자재로 써진다. 글씨체도 자유자재 아무튼 위에 풀이를 토대로 코드를 작성해본다. 1 2 3 4 5 6 7 8 9 10 11 12 13.. 2021. 4. 27.
백준 2581번 자바 소수 [기본 수학2] 에라토스테네스의 체 간단하다. m, n 두 수를 입력 후 m과 n 사이의 소수의 합을 출력하고 가장 작은 소수를 출력하면 된다. 여기서는 에라토스테네스 체 방법을 이용해서 문제를 풀어본다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 import java.util.Scanner; public class Main { //baekjoon 2581 소수 수학2 public static void main(String[] args){ Scanner sc = new Scanner(System.in); int m = sc.nextInt(); int n = sc.nextInt();.. 2021. 4. 26.
백준 1978번 자바 소수 찾기 [수학2] 단계별 문제풀기 드디어 기본 수학2에 들어왔다. 첫 번째 문제는 매너 있게 쉬운 문제다. 사실 뭐.. 지금까지들의 문제도 다 쉽긴 했다. 입력할 수 N을 입력하고 1000이하의 자연수를 네 개 입력한다. 입력한 수들 중 소수를 찾는 프로그램을 작성한다. 소수란 3.141592.. 이런게 아니라 1보다 큰 자연수 중 1과 자신의 수를 약수로 가지는 수다. 즉 1, 자신의 수 빼고 나눠지는 수가 있으면 안된다. ex) 1, 2, 3, 5, 7 .... 방법 1. 뭐 아아주 단순하게 생각하면 입력한 수를 for문 돌려서 나눠 떨어지면 소수가 아닌것으로 검사하면 된다. 7이라 했을때 1 과 7은 검사대상 제외이므로 7을 2~6까지 계속 나눠보고 나눠 떨어지면 소수가 아니고 나눠떨어지는 수가 끝까지 안나오면 소수.. 2021. 4. 23.