본문 바로가기

Algorithm/Dovelet

섞기 수열/koi_orbit (16 %) (coding)


 문제

http://183.106.113.109/pool/koi_orbit/koi_orbit.php?pname=koi_orbit

 풀이

처음엔 단순 코딩 문제라 생각하고 막 코딩했는데...입력값 n이 100을 넘어가니 time limit이 뜬다.

문제의 출력 부분에 ' 단, 궤적이 1 이상 2,000,000,000 이하인 입력만 주어진다.'라고 되어있는데. 이렇게 큰 수가 나올 수 있는 경우에는 그냥 풀어선 모든 테스트 케이스를 통과하기 힘들다.

아래와 같이 표를 그려보니 규칙이 있다는 것을 알 수 있었다.

 1 

2

3

4

5

6

3

5

1

2

4

2

1

6

2

3

4

1 → 3  5 (3번)

2  2  2

4  6 (2번)

2의 경우 변경 되는 부분이 없기 때문에 무시하고, 3과 2의 최소 공배수를 구하면 답이 나온다는 것을 알 수 있다.

 Code






'Algorithm > Dovelet' 카테고리의 다른 글

[Algorithm]전깃줄 (koi_Ewire) / 29%  (0) 2014.08.20
공약수(koi_numM1)/옥상  (0) 2014.08.18
josephus / 통과율(51%)  (0) 2014.07.02
Block/통과율(61%)  (0) 2014.07.02
속임수/coci_trik/통과율(63%)  (0) 2014.05.09