Post

2회 문제풀이 04 / ABC 116 B - Collatz Problem

ABC 116 B - Collatz Problem

【문제 개요】

수열a = {a1, a2, a3, …}는 이하와 같은 조건으로 결정됩니다.

  • 초항 s는 입력으로 주어진다.
  • 기능 f(n)을 다음과 같이 정한다. f(n-1)가 짝수라면 f(n) = n/2, f(n-1)가 홀수라면 f(n) = 3n + 1
  • i = 1때 ai = s, i > 1일때 ai = f(ai -1)이다.

이때, 다음의 조건을 만족하는 최소값의 정수 m을 구하시오.

  • am = an(m > n)를 만족하는 정수 n가 존재한다.

【전제】

  • 1 ≦ S ≦ 100
  • 입력은 전부 정수이다.
  • a의 모든 요소와 조건을 만족하는 최소의 m은 1000000 이하이다.

【입력 형태】

1
s

【출력 형태】

조건을 만족하는 최소의 정수 m를 출력하시오.

【예시】

입력 예 1

1
8

출력 예 1

1
5

a={8,4,2,1,4,2,1,4,2,1,……}입니다. a5 = a2이기에 정답은 5이다.

입력 예 2

1
7

출력 예 2

1
18

a={7,22,11,34,17,52,26,13,40,20,10,5,16,8,4,2,1,4,2,1,……}입니다.

입력 예 3

1
54

출력 예 3

1
114

출처 : https://atcoder.jp/contests/abc116/tasks/abc116_b

ABC 116 B - Collatz Problem

【문제 개요】

수열a = {a1, a2, a3, …}는 이하와 같은 조건으로 결정됩니다.

  • 초항 s는 입력으로 주어진다.
  • 기능 f(n)을 다음과 같이 정한다. f(n-1)가 짝수라면 f(n) = n/2, f(n-1)가 홀수라면 f(n) = 3n + 1
  • i = 1때 ai = s, i > 1일때 ai = f(ai -1)이다.

이때, 다음의 조건을 만족하는 최소값의 정수 m을 구하시오.

  • am = an(m > n)를 만족하는 정수 n가 존재한다.

【전제】

  • 1 ≦ S ≦ 100
  • 입력은 전부 정수이다.
  • a의 모든 요소와 조건을 만족하는 최소의 m은 1000000 이하이다.

【입력 형태】

1
s

【출력 형태】

조건을 만족하는 최소의 정수 m를 출력하시오.

【예시】

입력 예 1

1
8

출력 예 1

1
5

a={8,4,2,1,4,2,1,4,2,1,……}입니다. a5 = a2이기에 정답은 5이다.

입력 예 2

1
7

출력 예 2

1
18

a={7,22,11,34,17,52,26,13,40,20,10,5,16,8,4,2,1,4,2,1,……}입니다.

입력 예 3

1
54

출력 예 3

1
114

출처 : https://atcoder.jp/contests/abc116/tasks/abc116_b

このポストは作成者の CC BY 4.0 ライセンスによって保護されます。