반응형
SMALL

C언어 3

[백준] 24416(피보나치 수 1) - C언어

안녕하세요 오늘은 백준 24416번 피보나치 수 1 문제에 대해 해설하겠습니다. 기말시험과 방학 여행때문에 이제서야 왔네요... (귀찮았던건 안비밀...) 군대 가기 전까지 다시 열심히 달리겠습니다! 이 문제는 피보나치 수를 활용한 가장 기본적인 동적 프로그래밍 문제이다. 각 의사코드에 맞게 피보나치 수를 재귀호출,동적프로그래밍으로 작성후 각 코드의 실행 횟수를 출력해 빠르기를 비교하는 문제다. 우선 간단하게 피보나치의 수가 뭐냐면, 피보나치 1 1 2 3 5 8 13 21... 이런식으로 앞의 두 숫자의 합이 그 다음 숫자로 이어지는 수열을 피보나치 수 라고 한다. 이제 재귀호출로 푼 코드부터 살펴보자. 재귀호출 재귀호출은 의사코드와 똑같이 써도 된다. 이렇게 말이다. 아래는 의사코드이다. fib(n)..

[백준] 14915(진수 변환기) - C언어

이번 문제는 정수 m, n을 받아서 10진수인 m을 n진수로 바꾸는 문제였다. 바로 저번문제에서 이진수로 변환시키는 문제처럼 하되, n진수 표현만 하면 되기에 생각보다 할만 했다. 이전 백준 문제 풀이 10829(이진수 변환) 보러가기 --> https://leedongchan.tistory.com/entry/%EB%B0%B1%EC%A4%80-10829%EC%9D%B4%EC%A7%84%EC%88%98-%EB%B3%80%ED%99%98-C%EC%96%B8%EC%96%B4 [백준] 10829(이진수 변환) - C언어 이번 문제는 정수 범위 (1 ≤ N ≤ 100,000,000,000,000)의 자연수를 받아서 이진수로 만드는 문제였다. 이 문제를 보고 100조개의 정수를 이진수로 바꾸면 대체 얼마나 많은 정..

[백준] 10829(이진수 변환) - C언어

이번 문제는 정수 범위 (1 ≤ N ≤ 100,000,000,000,000)의 자연수를 받아서 이진수로 만드는 문제였다. 이진수로의 변환은 long long 타입의 정수 n을 받아서 계속해서 2로 나누어 주며 이때의 나머지를 n을 2로 나누었을 때의 몫이 0이 될 때 까지 순서대로 쭉 저장 시켜주고 마지막에 저장한 수 부터 거꾸로 출력 시키면 된다. 이 문제를 보고 100조개의 정수를 이진수로 바꾸면 대체 얼마나 많은 정수 범위가 필요하지? 얼마나 많은 범위가 필요한거지? 이런 바보 같은 고민을 하면서, 배열을 사용할 생각을 안하고 이런식으로 long long을 활용한 코드를 짰다. 오답 코드 #include long long Z (long long n){ // long long 타입 n을 받아서 10의..

반응형
LIST