Cain Calendar
Transformed version of Calculate Date
๋ ์ง ๊ณ์ฐ ๋ฌธ์ ์ ๊ฑฐ์ ๋น์ทํ๋ค๊ณ ํ ์ ์๋ค. ํ์ง๋ง ์๋์ ๊ฐ์ด Brute Force ๋ฅผ ์ฌ์ฉํ ์ ์๋ ์๊ณ ๋ฆฌ์ฆ์ ์๊ฐํด๋ณด์.
์๊ณ ๋ฆฌ์ฆ ์๊ฐ
๊ฒฝ์ฐ์ ์๋ฅผ ์๊ฐํด๋ณธ๋ค. M๊ณผ N์ 40,000์ดํ์ด๊ณ , ์ด ๋์ ๊ฐ๋ฅํ ์กฐํฉ์ 16*10^8 = 16์ต(์ฝ 16์ด) > O(1์ต=1์ด) ์ด๋ฏ๋ก ์๊ฐ์ด๊ณผ๊ฐ ๋์ค๊ฒ ๋๋ค. ๋ค๋ฅธ ๋ฐฉ๋ฒ์ ์๊ฐํด๋ด์ผํ๋ค.=>๊ฑด๋๋ฐ๋ฉฐ ํด๋ณด๋ ๋ฐฉ๋ฒ!
M=5, N=7, <3,6>๋ ๋ช๋ฒ์งธ ํด์ธ๊ฐ? x(3)์ M(5)๋งํผ ๋ฐ๋ณต๋๋ ๊ฒ์ ์ ์ ์๋ค.
1
<1,1>
6
<1,6>
11
<1,4>
16
<1,2>
21
<1,7>
26
<1,5>
31
<1,3>
2
<2,2>
7
<2,7>
12
<2,5>
17
<2,3>
22
<2,1>
27
<2,6>
32
<2,4>
3
<3,3>
8
<3,1>
13
<3,1>
18
<3,4>
23
<3,2>
28
<3,7>
33
<3,5>
4
<4,4>
9
<4,2>
14
<4,2>
19
<4,5>
24
<4,3>
29
<4,1>
34
<3,6>
5
<5,6>
10
<5,3>
15
<5,3>
20
<5,6>
25
<5,4>
30
<5,2>
35
<5,7>
3. ๋ ์ง ๊ณ์ฐ๋ฌธ์ ์ ๋ง์ฐฌ๊ฐ์ง๋ก, ์ ๋ ฅ๋ฐ์ <x,y>๋ฅผ ๊ฐ๊ฐ -1์ฉ ํด์ M๊ณผ N์ผ๋ก ๋๋ ๋๋จธ์ง๋ฅผ ๊ตฌํ๋ฉด ๋๋ค. ๊ทธ ๋๋จธ์ง+1์ด ์ ๋ต์ด ๋๋ค.
0
<0,0>
5
<0,5>
10
<0,3>
15
<0,1>
20
<0,6>
25
<0,4>
30
<0,2>
1
<1,1>
6
<1,6>
11
<1,4>
16
<1,2>
21
<1,0>
26
<1,5>
31
<1,3>
2
<2,2>
7
<2,0>
12
<2,5>
17
<2,3>
22
<2,1>
27
<2,6>
32
<2,4>
3
<3,3>
8
<3,1>
13
<3,6>
18
<3,4>
23
<3,2>
28
<3,0>
33
<3,5>
4
<4,4>
9
<4,2>
14
<4,0>
19
<4,5>
24
<4,3>
29
<4,1>
34
<4,6>
ex) x = 3, y = 2 -> <2,1> : x๊ฐ 2์ธ ๊ฒ๋ค์ ์ฐพ๋๋ค. 2์ธ x์ ๋ํด y์ ๊ฒฝ์ฐ์ ์๋ n๊ฐ์ง๊ฐ ๋์จ๋ค. i%n == y ์ธ i๋ฅผ ์ฐพ๋๋ค.
Last updated
Was this helpful?