오늘의 문제입니다.
뭐 어쩌구 하는데, 그냥 식에서 1이 나온 횟수랑 0이 나온 횟수만 구해주면 됩니다. (말은 이렇게 했지만 글이 개판이라 이해하는 데 3분 정도 걸림)
https://www.acmicpc.net/problem/1003
여기서 풀어보실 수 있습니다
이건 요걸 사용한 문제입니다
(사진은 나무위키에서 긁어왔습니다)
진짜임
(출처 : 나무위키)
정확히는 저 밑에 적힌 피보나치 수열이라고 하는 문제입니다.
F0=0, F1= 1, Fn+2 = Fn+1 + Fn
이런 식입니다.
근데 제가 이해를 못했음으로 소개만 하고 넘어가겠습니다.
이번 글이 백준문제 풀기 -1인 이유가 그거임. 오늘 문제를 두번 풀 생각이라...
그럼 이번에는 이쯤해서 제 답을 올리고 공부해 오겠습니다.
일단 프로그램을 실행부(main 함수)와 함수?부로(fibonacci함수) 나눴습니다.
메인 함수 안에 모든 식이 다 들어가면 보기 힘들고 고치기도 힘들다고 배워서 이렇게 나눴습니다.
식을 나눠뒀으니 자세하게 설명하자면, 실행부에서는 실행할 횟수 T를 입력받고 T번 동안 프로그램을 실행하는 식 입니다.
그리고 다시 실행할 때마다 밑의 zero와 one의 카운터를 0으로 초기화해줍니다.
fibonnachi 함수에서는 말 그대로 피보나치 함수를 실행하고, 실할 할 때마다 각 출력하는 숫자(0은 zero, 1은 one)에 카운트를 하나 넣는 식입니다.
카드겜의 카운터 맞습니다. 체인 할 때마다 1, 2, 3, 4 이런식으로 카운터 올라가는 그런 느낌입니다.
근데, 식을 이런식으로 짜면 n값이 높아질 수록 실행횟수가 올라가서 최적화도 안되고 뽑는데 1~5분 걸리고 그럽니다.
최적화가 안됐다는 거죠.
그래서 지금은 다른 사람의 풀이를 보고 있습니다... 내일쯤 최적화한거 올리게씀.
으아 닼던이나 하러 가야긋다