[BOJ/๋ฐฑ์ค€] 20041 Escaping - ์ž๋ฐ”,ํŒŒ์ด์ฌ
ยท
๐Ÿ’ป ์•Œ๊ณ ๋ฆฌ์ฆ˜/PS
๋ฌธ์ œ https://www.acmicpc.net/problem/20041 20041๋ฒˆ: Escaping ์ฒซ ๋ฒˆ์งธ ์ค„์—๋Š” ๊ฒฝ์ฐฐ์˜ ์ˆ˜ N์ด ์ฃผ์–ด์ง„๋‹ค. ๋‹จ, 1 ≤ N ≤ 500,000์ด๋‹ค. ๊ทธ ๋‹ค์Œ N ๊ฐœ์˜ ์ค„์—๋Š” ๊ฐ ๊ฒฝ์ฐฐ์˜ ์ดˆ๊ธฐ ์œ„์น˜์˜ ์ขŒํ‘œ (xi, yi)๊ฐ€ ๊ณต๋ฐฑ์„ ์‚ฌ์ด์— ๋‘๊ณ  ์ฃผ์–ด์ง„๋‹ค. ๋‹ค์Œ ์ค„์—๋Š” ๋„๋‘‘์˜ ์ดˆ๊ธฐ ์œ„์น˜์˜ ์ขŒ www.acmicpc.net icpc 2020 ์˜ˆ์„  F๋ฒˆ ๋ฌธ์ œ๋กœ ๋„๋‘‘๊ณผ ๊ฒฝ์ฐฐ์— ๋Œ€ํ•œ ์ •๋ณด๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ, ๋„๋‘‘์ด ๊ฒฝ์ฐฐ์—๊ฒŒ์„œ ํƒˆ์ถœํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ํŒ๋‹จํ•˜๋Š” ๋ฌธ์ œ ๋ฌธ์ œํ’€์ด ๋„๋‘‘์ด ๊ฒฝ์ฐฐ์—๊ฒŒ์„œ ๊ฐ€์žฅ ๋ฉ€๋ฆฌ ๋‹ฌ์•„๋‚  ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์€ 4 ๋ฐฉํ–ฅ ์ค‘ ํ•œ ๋ฐฉํ–ฅ์œผ๋กœ ์ง์ง„ ํ•˜๋Š” ๋ฐฉ๋ฒ•์ด๋‹ค. ๊ฐ ๊ฒฝ์ฐฐ์— ๋Œ€ํ•ด์„œ ์œ„, ์•„๋ž˜, ์™ผ์ชฝ, ์˜ค๋ฅธ์ชฝ ๋ฐฉํ–ฅ์„ ํƒ์ƒ‰ํ•œ๋‹ค. ํ•œ ๋ฒˆ์ด๋ผ๋„ ํƒˆ์ถœํ•  ์ˆ˜ ์žˆ๋‹ค๋ฉด ์ดˆ๊ธฐ ์กฐ๊ฑด์—์„œ ํƒˆ์ถœ ๊ฐ€๋Šฅํ•œ ๊ฒƒ e..
[BOJ/๋ฐฑ์ค€] 20047 ๋™์ „ ์˜ฎ๊ธฐ๊ธฐ - ์ž๋ฐ”
ยท
๐Ÿ’ป ์•Œ๊ณ ๋ฆฌ์ฆ˜/PS
๋ฌธ์ œ ๋ฌธ์ œํ’€์ด ์ž…๋ ฅ๋ฐ›์€ S ๋ฐฐ์—ด์—์„œ ๋‘ ๋™์ „์„ ์ œ์™ธํ•œ ๋ฐฐ์—ด์„ ์ƒˆ๋กœ ๋งŒ๋“ค๊ณ  ์„ ํƒ๋ฐ›์€ ๋‘ ๋™์ „์€ ๋˜ ๋”ฐ๋กœ temp ๋ฐฐ์—ด๋กœ ๋งŒ๋“ค์–ด์„œ T ๋ฐฐ์—ด๊ณผ ๋น„๊ตํ•  ๋•Œ ์‚ฌ์šฉํ–ˆ๋‹ค. find ํ•จ์ˆ˜๋ฅผ ์ด์šฉํ•ด์„œ ์กฐ๊ฑด์— ๋”ฐ๋ผ ์žฌ๊ท€์ ์œผ๋กœ ํ’€์—ˆ๋‹ค. find ํ•จ์ˆ˜ 1. s ๋ฐฐ์—ด index ๊ฐ’ + ๋‘ ๋™์ „ ์‚ฌ์šฉ ํšŸ์ˆ˜ == n-1์ด๋ฉด ํƒ์ƒ‰ ์™„๋ฃŒ, 1์„ return 2. index๊ฐ€ n-2์ธ ๊ฒฝ์šฐ -> T๋กœ ๋งŒ๋“ค ์ˆ˜ ์—†๋‹ค. 0์„ return (ex) oxo ์—์„œ x,o๋ฅผ ๋ฝ‘์•„์„œ oox๋ฅผ ๋งŒ๋“œ๋Š” ๊ฒฝ์šฐ) 3. s[index] == t[index+cnt] ์ด๋ฉด index๋ฅผ ์ฆ๊ฐ€์‹œ์ผœ์„œ ๋‹ค์Œ ๊ฐ’์„ ๋น„๊ตํ•œ๋‹ค. 4. ๋‘ ๋™์ „ ์‚ฌ์šฉ ํšŸ์ˆ˜๊ฐ€ 2์ธ ๊ฒฝ์šฐ; ์œ„์—์„œ ํ•ด๋‹นํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์—†์—ˆ๊ธฐ์— ์„ ํƒํ•œ ๋™์ „์„ ์ƒˆ๋กœ ๋„ฃ์–ด ๋ณ€ํ™”๋ฅผ ์ฃผ์–ด์•ผ ํ•˜๋Š”๋ฐ ๊ทธ ๋Ÿด ์ˆ˜ ์—†์œผ๋ฏ€๋กœ 0 re..
[BOJ/๋ฐฑ์ค€] 19538 ๋ฃจ๋จธ - ํŒŒ์ด์ฌ
ยท
๐Ÿ’ป ์•Œ๊ณ ๋ฆฌ์ฆ˜/PS
๋ฌธ์ œ https://www.acmicpc.net/problem/19538 19538๋ฒˆ: ๋ฃจ๋จธ ์˜ˆ์ œ 1 0๋ถ„ : ์ตœ์ดˆ ์œ ํฌ์ž($1$, $6$๋ฒˆ ์‚ฌ๋žŒ)๊ฐ€ ๋ฃจ๋จธ๋ฅผ ์ƒ์„ฑํ•œ๋‹ค. 1๋ถ„ : $1$๋ฒˆ ์‚ฌ๋žŒ์€ $2$, $3$๋ฒˆ ์‚ฌ๋žŒ์—๊ฒŒ ๋ฃจ๋จธ๋ฅผ ํผ๋œจ๋ฆฐ๋‹ค. $2$๋ฒˆ ์‚ฌ๋žŒ์€ ์ฃผ๋ณ€์ธ $2$๋ช… ์ค‘ $1$๋ช…์ด ๋ฃจ๋จธ๋ฅผ ๋ฏฟ๊ณ  ์žˆ์–ด ๋ฃจ๋จธ๋ฅผ ๋ฏฟ๊ฒŒ ๋œ๋‹ค. $3$ www.acmicpc.net ๋ฌธ์ œํ’€์ด 2๊ฐœ์˜ ๋ฑ์„ ์‚ฌ์šฉํ•ด์„œ ํ’€์—ˆ๋‹ค. ์ฒ˜์Œ ์œ ํฌ์ž๋ฅผ ์‹œ์ž‘์œผ๋กœ ์ƒˆ๋กœ ๋ฃจ๋จธ๋ฅผ ๋ฏฟ๋Š” ์‚ฌ๋žŒ๋“ค์„ start ๋ฑ์— ์ถ”๊ฐ€ํ•˜์—ฌ ๋ฑ์ด ๋นŒ ๋•Œ๊นŒ์ง€ ํƒ์ƒ‰์„ ์ง„ํ–‰ํ–ˆ๋‹ค. ์ƒˆ๋กœ ๋ฃจ๋จธ๋ฅผ ๋ฏฟ๋Š” ์‚ฌ๋žŒ๋“ค์˜ time ๊ฐ’์„ ์—…๋ฐ์ดํŠธ ํ•ด ์ค„ ๋•Œ์—๋Š” ์ฆ‰์‹œ ์—…๋ฐ์ดํŠธ ํ•ด์ฃผ๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ, ๋”ฐ๋กœ que๋ผ๋Š” ๋ฑ์— ์ถ”๊ฐ€ํ•ด์„œ ํ•ด๋‹น ํƒ์ƒ‰์ด ๋๋‚œ ์ดํ›„์— ์—…๋ฐ์ดํŠธ๋ฅผ ํ•ด์ฃผ์—ˆ๋‹ค. ์ฆ‰์‹œ ์—…๋ฐ์ดํŠธ ํ•˜๋Š” ๊ฒฝ์šฐ, ๋‹ค..
[BOJ/๋ฐฑ์ค€] 1074 Z - ํŒŒ์ด์ฌ
ยท
๐Ÿ’ป ์•Œ๊ณ ๋ฆฌ์ฆ˜/PS
๋ฌธ์ œ https://www.acmicpc.net/problem/1074 1074๋ฒˆ: Z ํ•œ์ˆ˜๋Š” ํฌ๊ธฐ๊ฐ€ 2N × 2N์ธ 2์ฐจ์› ๋ฐฐ์—ด์„ Z๋ชจ์–‘์œผ๋กœ ํƒ์ƒ‰ํ•˜๋ ค๊ณ  ํ•œ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, 2×2๋ฐฐ์—ด์„ ์™ผ์ชฝ ์œ„์นธ, ์˜ค๋ฅธ์ชฝ ์œ„์นธ, ์™ผ์ชฝ ์•„๋ž˜์นธ, ์˜ค๋ฅธ์ชฝ ์•„๋ž˜์นธ ์ˆœ์„œ๋Œ€๋กœ ๋ฐฉ๋ฌธํ•˜๋ฉด Z๋ชจ์–‘์ด๋‹ค. N > 1์ธ ๊ฒฝ์šฐ, ๋ฐฐ์—ด์„ www.acmicpc.net ๋ฌธ์ œํ’€์ด ์žฌ๊ท€๋ฅผ ์‚ฌ์šฉํ•ด์„œ ํ‘ธ๋Š” ๋ฌธ์ œ์ด๋‹ค. ์ฒ˜์Œ (2^N)*(2^N) ํฌ๊ธฐ์˜ 2์ฐจ์› ๋ฐฐ์—ด์—์„œ๋ถ€ํ„ฐ 4์‚ฌ๋ถ„๋ฉด์œผ๋กœ ๋‚˜๋ˆ„์–ด ๊ธธ์ด๋ฅผ ๋ฐ˜์”ฉ ์ค„์—ฌ๋‚˜๊ฐ„๋‹ค. ๋ถ„ํ• ๋œ ๋„ค ๊ณต๊ฐ„ ์ค‘ ( r , c )๊ฐ€ ์–ด๋А ๊ณณ์— ์†ํ•˜๋Š”์ง€ ํ™•์ธํ•œ๋‹ค. ์†ํ•˜์ง€ ์•Š๋Š” ๋ถ€๋ถ„์— ๋Œ€ํ•ด์„œ๋Š” ๊ทธ ํฌ๊ธฐ๋งŒํผ ans ๊ฐ’์„ ๋”ํ•ด์ค€๋‹ค. x==r ์ด๊ณ  y==c ์ด๋ฉด ans๋ฅผ ์ถœ๋ ฅํ•˜๊ณ  ์ข…๋ฃŒํ•œ๋‹ค. ์ฝ”๋“œ import sys input=sys.stdin...