๋ฌํฝ์ด ๋ฆฌ์คํธ
์๊ฐ ์ ํ | ๋ฉ๋ชจ๋ฆฌ ์ ํ | ์ ์ถ | ์ ๋ต | ๋ง์ ์ฌ๋ | ์ ๋ต ๋น์จ |
---|---|---|---|---|---|
1 ์ด | 256 MB | 597 | 219 | 175 | 40.984% |
๋ฌธ์
์์ง์ด๋ ๋ฌํฝ์ด๋ฅผ ์ข์ํ๋ค. ๋ฌํฝ์ด๋ฅผ ๋๋ฌด๋๋ฌด ์ข์ํ๊ธฐ ๋๋ฌธ์ ํน์ ํ ๋ชจ์์ ๋จ๋ฐฉํฅ ์ฐ๊ฒฐ๋ฆฌ์คํธ์ ๋ฌํฝ์ด ๋ฆฌ์คํธ๋ผ๋ ์ด๋ฆ์ ๋ถ์ฌ์ฃผ์๋ค.
์ผ๋ฐ์ ์ธ ์ ํ ๋จ๋ฐฉํฅ ์ฐ๊ฒฐ๋ฆฌ์คํธ์ ๊ฐ ๋ ธ๋ ๋ฒํธ๋ฅผ ์ฐ๊ฒฐ๋ ์์๋๋ก 1, 2, ..., N์ด๋ผ ํ์. ์ด๋ N๋ฒ ๋ ธ๋๋ ์๋ฌด ๋ ธ๋๋ ๊ฐ๋ฆฌํค์ง ์๋๋ฐ, ์ฌ๊ธฐ์ N๋ฒ ๋ ธ๋๊ฐ 1๋ฒ ๋ ธ๋๋ฅผ ์ ์ธํ ์์์ ๋ ธ๋๋ฅผ ๊ฐ๋ฆฌ์ผ ์ฌ์ดํด์ ์ด๋ฃจ๊ฒ ๋๋ ๋ฆฌ์คํธ๋ฅผ ๋ฌํฝ์ด ๋ฆฌ์คํธ๋ผ๊ณ ํ๋ค. ๋ฌํฝ์ด ๋ฆฌ์คํธ๋ ๊ฐ ๋ ธ๋๋น ํ๋์ ์ ์๋ฅผ ์ ์ฅํ๋ค.
์ฆ, ๋ฌํฝ์ด ๋ฆฌ์คํธ๋ ๋ค์๊ณผ ๊ฐ์ด ์๊ธด ์ฐ๊ฒฐ๋ฆฌ์คํธ์ด๋ค. ๋ ธ๋ ์์ ์๋ ์ ์ฅ๋ ๊ฐ์ ๋ปํ๋ค.
"๋ฌํฝ์ ๋ฌํฝ์ 1๋ฒ ๋ ธ๋๋ถํฐ ํ ์นธ์ฉ ์ด K๋ฒ ์ด๋ํด ๋์ฐฉํ ๋ ธ๋์ ์ด๋ค ๊ฐ์ด ์์๊น?"
์์ง์ด๋ ์ด๋์ด ๋ฐฉ ์์์ ๋ฌํฝ์ด ๋ฆฌ์คํธ ํ๋๋ฅผ ์ฑ์ฑ ๊ทธ๋ฆฌ๋๋, ๊ฐ์ ๋ง์ K๋ง ๋ฐ๊ฟ๊ฐ๋ฉฐ ๊ณ์ ์ค์ผ๊ฑฐ๋ ธ๋ค.
์์ง์ด์ ์ํ๊ฐ ์ฌ์์น ์์ ๋ณด์ธ๋ค... ์ํฉ์ด ๋ ์ ํ๋๊ธฐ ์ ์ ์์ง์ด์ ๋ชจ๋ ์ง๋ฌธ์ ๋๋ตํด์ฃผ๋๋ก ํ์.
์ ๋ ฅ
์ฒซ์งธ ์ค์ ๋ ธ๋์ ๊ฐ์ N(2 ≤ N ≤ 200,000), ์ง๋ฌธ์ ํ์ M(1 ≤ M ≤ 200,000), N๋ฒ ๋ ธ๋๊ฐ ๊ฐ๋ฆฌํค๋ ๋ ธ๋์ ๋ฒํธ V(2 ≤ V ≤ N)๊ฐ ๊ณต๋ฐฑ์ผ๋ก ๊ตฌ๋ถ๋์ด ์ฃผ์ด์ง๋ค.
๋์งธ ์ค์ N๊ฐ์ ์ ์ C1, C2, …, CN์ด ๊ณต๋ฐฑ์ผ๋ก ๊ตฌ๋ถ๋์ด ์ฃผ์ด์ง๋ค. ์ด๋ *Ci๋ i๋ฒ ๋ ธ๋์ ์ ์ฅ๋ ๊ฐ์ ๋ปํ๋ค. (1 ≤ *Ci ≤ 1,000,000)
์ ์งธ ์ค๋ถํฐ M๊ฐ์ ์ค์ ๊ฑธ์ณ ๊ฐ ์ง๋ฌธ์ ํด๋นํ๋ K(1 ≤ K ≤ 109)๊ฐ ์ฃผ์ด์ง๋ค.
์ถ๋ ฅ
M๊ฐ์ ์ค์ ๊ฑธ์ณ ๊ฐ ์ง๋ฌธ์ ๋ต์ ์ถ๋ ฅํ๋ค.
๋์ ๋ต
# ๋ฌํฝ์ด ๋ฆฌ์คํธ
n,m,v = map(int,input().split())
v = v-1
c = list(map(int,input().split()))
answer = list()
len_recurse = n-v
for i in range(0,m): # 2*10^5
k = int(input())
if k<n:
answer.append(c[k])
else:
tmp = (k-v)%len_recurse
answer.append(c[v+tmp])
for ans in answer:
print(ans)
์ฒ์์ ํจ์๋ก ๋ง๋ค์๋ค๊ฐ ์คํ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๋๋ฌด ์ก์๋จน์๊น๋ด ๊ทธ๋ฅ ์์ ๋ฒ๋ ธ๋ค. ๋ํ for๋ฌธ ์์์ ์ฐ์ฐ์ด ์ต๋ํ ์ค๋๋ก ์ ์ญ๋ณ์๋ก ๋๋ถ๋ถ์ ๋ณ์๋ฅผ ํ ๋นํ๋ค. ์ฃผ์ for๋ฌธ ํ์ํ ๋ถ๋ถ์ด 2*10^5๋งํผ ๋์๊ฐ๋๋ฐ ์ด์งธ์์ธ์ง python์ผ๋ก๋ ์๊ฐ ์ด๊ณผ๊ฐ ๋์จ๋ค. ( pypy3๋ก ๋๋ฆฌ๋ฉด ๋ง์๋ค๊ณ ๋์จ๋ค. )
'Algorithm ๋ฌธ์ > BOJ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[c++]๋ฐฑ์ค 1260๋ฒ : DFS์ BFS (0) | 2020.03.20 |
---|---|
[python]๋ฐฑ์ค 17836๋ฒ : ๊ณต์ฃผ๋์ ๊ตฌํด๋ผ! (0) | 2020.03.13 |
[python]๋ฐฑ์ค 1699๋ฒ : ์ ๊ณฑ์์ ํฉ (0) | 2020.03.06 |
[python]๋ฐฑ์ค 6549๋ฒ : ํ์คํ ๊ทธ๋จ์์ ๊ฐ์ฅ ํฐ ์ง์ฌ๊ฐํ (0) | 2020.03.06 |
[python]๋ฐฑ์ค 1780๋ฒ : ์ข ์ด์ ๊ฐ์ (0) | 2020.03.06 |
Comment