Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 스레드
- 입출력장치
- DirectX
- 131701
- 보조기억장치
- 혼자공부하는
- 지역변수
- Transform
- dfs
- 운영체제
- BFS
- 컴퓨터구조
- 독학
- 멀티스레드
- 그래프
- 인터럽트
- DDR SDRAM
- 풀이
- 프로세스
- 컴퓨터 구조
- 프로그래머스
- 렌더링 파이프라인
- 코딩테스트
- 138477
- C++
- static
- 혼자 공부하는
- 장치컨트롤러
- 한빛미디어
- CPU 스케줄링
Archives
- Today
- Total
빼미의 개발일기
[프로그래머스][Lv.2] - 멀리뛰기 본문
● 소감
- 어려워보였지만 어렵지 않았다.
● 나의 풀이
더보기
1) 문제 이해
- 처음 문제를 접했을 때 음~ 어떻게 풀지~ 했지만, 몇 개를 직접 만들어봤을 때 피보나치 수열이었다는 걸 알게 되었다. 코테에서 피보나치가 나왔다? 그럼 바로 다이나믹 프로그래밍으로 간다.
2) 조건 찾기
- 여느 피보나치 수열이 그렇듯 1, 2번째의 가정은 바로 도출하고, 그 이후론 계산을 하는 방식으로 간다.
- n - 2 만큼의 for문을 돌려서 결과에 접근한다.
3) 나머지를 구하라?
- 이런 문제의 경우 나머지를 구하라는 문제가 많은데 혹시 (a + b) % n 의 방식으로 나머지를 구하려고 하면 백방 틀린다. 처음에는 나머지를 어떻게 구하는지 오히려 헷갈렸지만, 지금은 공식처럼 외우고 있는 식이 있다.
(a % n + b % n) % n
구한 a의 나머지와 b의 나머지를 더하고 다시 그의 나머지를 구하면 된다.
● 내가 작성한 답
더보기
long long solution(int n)
{
long long answer = 0;
if (n == 1)
return 1;
if (n == 2)
return 2;
int a = 1;
int b = 2;
for(int i = 0; i < n-2; i++)
{
answer = (a % 1234567 + b % 1234567) % 1234567;
a = b % 1234567;
b = answer;
}
return answer;
}
'코딩테스트 > 프로그래머스' 카테고리의 다른 글
[프로그래머스][Lv.1] - 명예의 전당(1) (0) | 2023.12.30 |
---|---|
[프로그래머스][Lv.1] - 추억 점수 (0) | 2023.12.30 |
[프로그래머스][Lv.1] - 콜라 문제 (0) | 2023.12.29 |
[프로그래머스][Lv.2] - 구명보트 (0) | 2023.12.29 |
[프로그래머스][Lv.2] - 점프와 순간 이동 (0) | 2023.12.29 |
Comments