๊ตฌํ˜„

์ˆ˜ ๋นˆยท2022๋…„ 1์›” 4์ผ
0
post-thumbnail

๐Ÿ”Ž ๊ตฌํ˜„

์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ์—์„œ ๊ตฌํ˜„์ด๋ž€ '๋จธ๋ฆฟ์†์— ์žˆ๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์†Œ์Šค์ฝ”๋“œ๋กœ ๋ฐ”๊พธ๋Š” ๊ณผ์ •'
ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์˜ ๋ฌธ๋ฒ•์„ ์ •ํ™•ํžˆ ์•Œ๊ณ  ์žˆ์–ด์•ผ ํ•˜๋ฉฐ ๋ฌธ์ œ์˜ ์š”๊ตฌ์‚ฌํ•ญ์— ์–ด๊ธ‹๋‚˜์ง€ ์•Š๋Š” ๋‹ต์•ˆ ์ฝ”๋“œ๋ฅผ ์‹ค์ˆ˜ ์—†์ด ์ž‘์„ฑํ•ด์•ผ ํ•จ

๊ตฌํ˜„ ์œ ํ˜•์˜ ๋ฌธ์ œ = 'ํ’€์ด๋ฅผ ๋– ์˜ฌ๋ฆฌ๋Š” ๊ฒƒ์€ ์‰ฝ์ง€๋งŒ ์†Œ์Šค์ฝ”๋“œ๋กœ ์˜ฎ๊ธฐ๊ธฐ ์–ด๋ ค์šด ๋ฌธ์ œ'๋ฅผ ์˜๋ฏธ

๋ณดํ†ต ๊ตฌํ˜„ ์œ ํ˜•์˜ ๋ฌธ์ œ๋Š” ์‚ฌ์†Œํ•œ ์ž…๋ ฅ ์กฐ๊ฑด ๋“ฑ์„ ๋ฌธ์ œ์—์„œ ๋ช…์‹œํ•ด์ฃผ๋ฉฐ ๋ฌธ์ œ์˜ ๊ธธ์ด๊ฐ€ ๊ฝค ๊ธด ํŽธ์ž„

ํ•ด๋‹น ์ฑ…์—์„œ๋Š” ์™„์ „ ํƒ์ƒ‰, ์‹œ๋ฎฌ๋ ˆ์ด์…˜ ์œ ํ˜•์„ ๋ชจ๋‘ '๊ตฌํ˜„' ์œ ํ˜•์œผ๋กœ ๋ฌถ์–ด์„œ ๋‹ค๋ฃธ

  • ์™„์ „ํƒ์ƒ‰์€ ๋ชจ๋“  ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ์ฃผ์ € ์—†์ด ๋‹ค ๊ณ„์‚ฐํ•˜๋Š” ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์„ ์˜๋ฏธ
  • ์‹œ๋ฎฌ๋ ˆ์ด์…˜์€ ๋ฌธ์ œ์—์„œ ์ œ์‹œํ•œ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ํ•œ ๋‹จ๊ณ„์”ฉ ์ฐจ๋ก€๋Œ€๋กœ ์ง์ ‘ ์ˆ˜ํ–‰ํ•ด์•ผ ํ•˜๋Š” ๋ฌธ์ œ ์œ ํ˜•์„ ์˜๋ฏธ

โš  ๊ณ ๋ คํ•ด์•ผ ํ•  ๋ฉ”๋ชจ๋ฆฌ ์ œ์•ฝ ์‚ฌํ•ญ๊ณผ ์ฑ„์  ํ™˜๊ฒฝ

๋ณ€์ˆ˜์˜ ํ‘œํ˜„ ๋ฒ”์œ„

ํŒŒ์ด์ฌ์—์„œ๋Š” ํ”„๋กœ๊ทธ๋ž˜๋จธ๊ฐ€ ์ง์ ‘ ์ž๋ฃŒํ˜•์„ ์ง€์ •ํ•  ํ•„์š”๊ฐ€ ์—†์œผ๋ฉฐ ๋งค์šฐ ํฐ ์ˆ˜์˜ ์—ฐ์‚ฐ ๋˜ํ•œ ๊ธฐ๋ณธ์œผ๋กœ ์ง€์›ํ•จ

ํŒŒ์ด์ฌ์—์„œ ๋ฆฌ์ŠคํŠธ ํฌ๊ธฐ

ํŒŒ์ด์ฌ์—์„œ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋ณ€์ˆ˜๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ๋Š” ๋ฆฌ์ŠคํŠธ๋ฅผ ์ด์šฉํ•จ
๋ฆฌ์ŠคํŠธ๋ฅผ ์ด์šฉํ•  ๋•Œ์— ๊ณ ๋ คํ•ด์•ผ ํ•  ์‚ฌํ•ญ => ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ์˜ ๋ฉ”๋ชจ๋ฆฌ ์ œํ•œ (๋Œ€์ฒด๋กœ 128 ~ 512MB)
์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œ ์ค‘ ๋•Œ๋กœ๋Š” ์ˆ˜๋ฐฑ๋งŒ ๊ฐœ ์ด์ƒ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•ด์•ผ ํ•˜๋Š” ๋ฌธ์ œ๊ฐ€ ์ถœ์ œ๋˜๊ณค ํ•จ => ๋ฉ”๋ชจ๋ฆฌ ์ œํ•œ์„ ์—ผ๋‘์— ๋‘๊ณ  ์ฝ”๋”ฉํ•ด์•ผ ํ•จ

int ์ž๋ฃŒํ˜• ๋ฐ์ดํ„ฐ์˜ ๊ฐœ์ˆ˜์— ๋”ฐ๋ฅธ ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋Ÿ‰

๋ฐ์ดํ„ฐ์˜ ๊ฐœ์ˆ˜(๋ฆฌ์ŠคํŠธ์˜ ๊ธธ์ด)๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋Ÿ‰
1,000์•ฝ 4KB
1,000,000์•ฝ 4MB
10,000,000์•ฝ 40MB

์ผ๋ฐ˜์ ์ธ ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ ์ˆ˜์ค€์—์„œ๋Š” ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋Ÿ‰ ์ œํ•œ๋ณด๋‹ค ๋” ์ ์€ ํฌ๊ธฐ์˜ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ•œ๋‹ค๋Š” ์  ์ •๋„๋งŒ ๊ธฐ์–ตํ•˜์ž

์ฑ„์  ํ™˜๊ฒฝ

๋ณดํ†ต ์ ‘ํ•˜๋Š” ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ ํ™˜๊ฒฝ์€ ์•„๋ž˜์™€ ๊ฐ™์Œ

  • ์‹œ๊ฐ„ ์ œํ•œ: 1์ดˆ
  • ๋ฉ”๋ชจ๋ฆฌ ์ œํ•œ: 128MB

ํŒŒ์ด์ฌ์€ C/C++์— ๋น„ํ•ด ๋™์ž‘ ์†๋„ ๋Š๋ฆผ
1์ดˆ์— 2,000๋งŒ ๋ฒˆ์˜ ์—ฐ์‚ฐ์„ ์ˆ˜ํ–‰ํ•œ๋‹ค๊ณ  ๊ฐ€์ •ํ•˜๋ฉด ํฌ๊ฒŒ ๋ฌด๋ฆฌ๊ฐ€ ์—†๋‹ค๋Š” ์ ๋งŒ ๊ธฐ์–ตํ•˜์ž
(Pypy3๋Š” ๋Œ€๋žต 1์ดˆ์— 2,000๋งŒ ๋ฒˆ์—์„œ 1์–ต ๋ฒˆ ์ •๋„์˜ ์—ฐ์‚ฐ์„ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ์Œ)

์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œ๋ฅผ ํ’€ ๋•Œ๋Š” ์‹œ๊ฐ„ ์ œํ•œ๊ณผ ๋ฐ์ดํ„ฐ์˜ ๊ฐœ์ˆ˜๋ฅผ ๋จผ์ € ํ™•์ธํ•œ ๋’ค์— ์ด ๋ฌธ์ œ๋ฅผ ์–ด๋Š ์ •๋„์˜ ์‹œ๊ฐ„ ๋ณต์žก๋„์˜ ์•Œ๊ณ ๋ฆฌ์ฆ˜์œผ๋กœ ์ž‘์„ฑํ•ด์•ผ ํ’€ ์ˆ˜ ์žˆ์„ ๊ฒƒ์ธ์ง€ ์˜ˆ์ธกํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•จ


โœ๏ธ ์˜ˆ์ œ

๐Ÿ“ ์ƒํ•˜์ขŒ์šฐ

์—ฌํ–‰๊ฐ€ A๋Š” N x N ํฌ๊ธฐ์˜ ์ •์‚ฌ๊ฐํ˜• ๊ณต๊ฐ„ ์œ„์— ์„œ ์žˆ์Œ (๊ณต๊ฐ„์€ 1 x 1 ํฌ๊ธฐ์˜ ์ •์‚ฌ๊ฐํ˜•)
๊ฐ€์žฅ ์™ผ์ชฝ ์œ„ ์ขŒํ‘œ๋Š” (1, 1), ๊ฐ€์žฅ ์˜ค๋ฅธ์ชฝ ์•„๋ž˜ ์ขŒํ‘œ๋Š” (N, N)์— ํ•ด๋‹นํ•จ
์—ฌํ–‰๊ฐ€ A๋Š” ์ƒ(U), ํ•˜(D), ์ขŒ(L), ์šฐ(R) ๋ฐฉํ–ฅ์œผ๋กœ ์ด๋™ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์‹œ์ž‘ ์ขŒํ‘œ๋Š” (1, 1)
๊ณ„ํš์„œ์—๋Š” ํ•˜๋‚˜์˜ ์ค„์— ๋„์–ด์“ฐ๊ธฐ๋ฅผ ๊ธฐ์ค€์œผ๋กœ ํ•˜์—ฌ L, R, U, D ์ค‘ ํ•˜๋‚˜์˜ ๋ฌธ์ž๊ฐ€ ๋ฐ˜๋ณต์ ์œผ๋กœ ์ ํ˜€ ์žˆ์Œ
์—ฌํ–‰๊ฐ€ A๊ฐ€ N x N ํฌ๊ธฐ์˜ ์ •์‚ฌ๊ฐํ˜• ๊ณต๊ฐ„์„ ๋ฒ—์–ด๋‚˜๋Š” ์›€์ง์ž„์€ ๋ฌด์‹œ๋จ

๊ณ„ํš์„œ๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ ์—ฌํ–‰๊ฐ€ A๊ฐ€ ์ตœ์ข…์ ์œผ๋กœ ๋„์ฐฉํ•  ์ง€์ ์˜ ์ขŒํ‘œ๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค

  • ์ž…๋ ฅ ์กฐ๊ฑด
    - ์ฒซ์งธ ์ค„์— ๊ณต๊ฐ„์˜ ํฌ๊ธฐ๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” N์ด ์ฃผ์–ด์ง (1 โ‰ค N โ‰ค 100)
    - ๋‘˜์งธ ์ค„์— ์—ฌํ–‰๊ฐ€ A๊ฐ€ ์ด๋™ํ•  ๊ณ„ํš์„œ ๋‚ด์šฉ์ด ์ฃผ์–ด์ง (1 โ‰ค ์ด๋™ ํšŸ์ˆ˜ โ‰ค 100)
  • ์ถœ๋ ฅ ์กฐ๊ฑด
    - ์ฒซ์งธ ์ค„์— ์—ฌํ–‰๊ฐ€ A๊ฐ€ ์ตœ์ข…์ ์œผ๋กœ ๋„์ฐฉํ•  ์ง€์ ์˜ ์ขŒํ‘œ (X, Y)๋ฅผ ๊ณต๋ฐฑ์œผ๋กœ ๊ตฌ๋ถ„ํ•˜์—ฌ ์ถœ๋ ฅํ•จ

๋ฌธ์ œ ํ•ด์„ค

์—ฐ์‚ฐ ํšŸ์ˆ˜๋Š” ์ด๋™ ํšŸ์ˆ˜์— ๋น„๋ก€ํ•˜๊ฒŒ ๋จ, ์ด๋™ ํšŸ์ˆ˜๊ฐ€ N๋ฒˆ์ธ ๊ฒฝ์šฐ ์‹œ๊ฐ„ ๋ณต์žก๋„๋Š” O(N)
์ผ๋ จ์˜ ๋ช…๋ น์— ๋”ฐ๋ผ ๊ฐœ์ฒด๋ฅผ ์ฐจ๋ก€๋Œ€๋กœ ์ด๋™์‹œํ‚จ๋‹ค๋Š” ์ ์—์„œ ์‹œ๋ฎฌ๋ ˆ์ด์…˜ ์œ ํ˜•์œผ๋กœ ๋ถ„๋ฅ˜๋จ
์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ์—์„œ์˜ ์‹œ๋ฎฌ๋ ˆ์ด์…˜ ์œ ํ˜•, ๊ตฌํ˜„ ์œ ํ˜•, ์™„์ „ ํƒ์ƒ‰ ์œ ํ˜•์€ ์„œ๋กœ ์œ ์‚ฌํ•œ ์ ์ด ๋งŽ์Œ
๊ฐ€์žฅ ๋‚œ์ด๋„๊ฐ€ ๋‚ฎ์€ 1 ~ 2๋ฒˆ ๋ฌธ์ œ => ๋Œ€๋ถ€๋ถ„ ๊ทธ๋ฆฌ๋”” ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด๋‚˜ ๊ตฌํ˜„ ๋ฌธ์ œ


๐Ÿ“ ์‹œ๊ฐ

์ •์ˆ˜ N์ด ์ž…๋ ฅ๋˜๋ฉด 00์‹œ 00๋ถ„ 00์ดˆ๋ถ€ํ„ฐ N์‹œ 59๋ถ„ 59์ดˆ๊นŒ์ง€์˜ ๋ชจ๋“  ์‹œ๊ฐ ์ค‘์—์„œ 3์ด ํ•˜๋‚˜๋ผ๋„ ํฌํ•จ๋˜๋Š” ๋ชจ๋“  ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค

  • ์ž…๋ ฅ ์กฐ๊ฑด
    - ์ฒซ์งธ ์ค„์— ์ •์ˆ˜ N์ด ์ž…๋ ฅ๋จ (0 โ‰ค N โ‰ค 23)
  • ์ถœ๋ ฅ ์กฐ๊ฑด
    - 00์‹œ 00๋ถ„ 00์ดˆ๋ถ€ํ„ฐ N์‹œ 59๋ถ„ 59์ดˆ๊นŒ์ง€์˜ ๋ชจ๋“  ์‹œ๊ฐ ์ค‘์—์„œ 3์ด ํ•˜๋‚˜๋ผ๋„ ํฌํ•จ๋˜๋Š” ๋ชจ๋“  ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ์ถœ๋ ฅํ•จ

๋ฌธ์ œ ํ•ด์„ค

๋ชจ๋“  ์‹œ๊ฐ์˜ ๊ฒฝ์šฐ๋ฅผ ํ•˜๋‚˜์”ฉ ์„ธ์„œ ์‰ฝ๊ฒŒ ํ’€ ์ˆ˜ ์žˆ๋Š” ๋ฌธ์ œ (ํ•˜๋ฃจ๋Š” 86,400์ดˆ์ด๊ธฐ์— ๋ชจ๋“  ๊ฒฝ์šฐ๋Š” 86,400๊ฐ€์ง€๋ฐ–์— ์กด์žฌํ•˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ)
ย  => ๊ฒฝ์šฐ์˜ ์ˆ˜๊ฐ€ 100,000๊ฐœ๋„ ๋˜์ง€ ์•Š์œผ๋ฏ€๋กœ ํŒŒ์ด์ฌ์—์„œ ๋ฌธ์ž์—ด ์—ฐ์‚ฐ์„ ์ด์šฉํ•ด 3์ด ์‹œ๊ฐ์— ํฌํ•จ๋˜์–ด ์žˆ๋Š”์ง€ ํ™•์ธํ•ด๋„ ์‹œ๊ฐ„ ์ œํ•œ 2์ดˆ ์•ˆ์— ๋ฌธ์ œ ํ•ด๊ฒฐ ๊ฐ€๋Šฅ
๋‹จ์ˆœํžˆ ์‹œ๊ฐ์„ 1์”ฉ ์ฆ๊ฐ€์‹œํ‚ค๋ฉฐ 3์ด ํ•˜๋‚˜๋ผ๋„ ํฌํ•จ๋˜์–ด ์žˆ๋Š”์ง€ ํ™•์ธํ•˜๋ฉด ๋จ
์‹œ, ๋ถ„, ์ดˆ์— ๋Œ€ํ•œ ๊ฒฝ์šฐ์˜ ์ˆ˜ => 24 x 60 x 60 => 3์ค‘ ๋ฐ˜๋ณต๋ฌธ

์ด๋Ÿฌํ•œ ์œ ํ˜•์€ ์™„์ „ ํƒ์ƒ‰ ์œ ํ˜•์œผ๋กœ ๋ถ„๋ฅ˜๋˜๊ธฐ๋„ ํ•จ
์ผ๋ฐ˜์ ์œผ๋กœ ์™„์ „ ํƒ์ƒ‰ ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ๋น„ํšจ์œจ์ ์ธ ์‹œ๊ฐ„ ๋ณต์žก๋„๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๊ธฐ์— ๋ฐ์ดํ„ฐ ๊ฐœ์ˆ˜๊ฐ€ ํฐ ๊ฒฝ์šฐ ์ •์ƒ์ ์œผ๋กœ ๋™์ž‘ํ•˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ์Œ
๋”ฐ๋ผ์„œ, ํ™•์ธ(ํƒ์ƒ‰)ํ•ด์•ผ ํ•  ์ „์ฒด ๋ฐ์ดํ„ฐ ๊ฐœ์ˆ˜๊ฐ€ 100๋งŒ ๊ฐœ ์ดํ•˜์ผ ๋•Œ ์™„์ „ ํƒ์ƒ‰์„ ์‚ฌ์šฉํ•˜๋ฉด ์ ์ ˆํ•จ


โœ๏ธ ์‹ค์ „ ๋ฌธ์ œ

๐Ÿ“ ์™•์‹ค์˜ ๋‚˜์ดํŠธ

์™•์‹ค ์ •์›์€ 8 x 8 ์ขŒํ‘œ ํ‰๋ฉด, ํ–‰ ์œ„์น˜๋ฅผ ํ‘œํ˜„ํ•  ๋•Œ๋Š” 1 ~ 8, ์—ด ์œ„์น˜๋ฅผ ํ‘œํ˜„ํ•  ๋•Œ๋Š” a ~ h๋กœ ํ‘œํ˜„
ํŠน์ •ํ•œ ํ•œ ์นธ์— ๋‚˜์ดํŠธ๊ฐ€ ์„œ ์žˆ์Œ, L์ž ํ˜•ํƒœ๋กœ๋งŒ ์ด๋™ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ์ •์› ๋ฐ–์œผ๋กœ๋Š” ๋‚˜๊ฐˆ ์ˆ˜ ์—†์Œ
๋‹ค์Œ๊ณผ ๊ฐ™์€ 2๊ฐ€์ง€ ๊ฒฝ์šฐ๋กœ ์ด๋™ํ•  ์ˆ˜ ์žˆ์Œ
ย  1. ์ˆ˜ํ‰์œผ๋กœ ๋‘ ์นธ ์ด๋™ํ•œ ๋’ค์— ์ˆ˜์ง์œผ๋กœ ํ•œ ์นธ ์ด๋™ํ•˜๊ธฐ
ย  2. ์ˆ˜์ง์œผ๋กœ ๋‘ ์นธ ์ด๋™ํ•œ ๋’ค์— ์ˆ˜ํ‰์œผ๋กœ ํ•œ ์นธ ์ด๋™ํ•˜๊ธฐ

๋‚˜์ดํŠธ์˜ ์œ„์น˜๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ ๋‚˜์ดํŠธ๊ฐ€ ์ด๋™ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค

  • ์ž…๋ ฅ ์กฐ๊ฑด
    - ์ฒซ์งธ ์ค„์— 8 x 8 ์ขŒํ‘œ ํ‰๋ฉด์ƒ์—์„œ ํ˜„์žฌ ๋‚˜์ดํŠธ๊ฐ€ ์œ„์น˜ํ•œ ๊ณณ์˜ ์ขŒํ‘œ๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ๋‘ ๋ฌธ์ž๋กœ ๊ตฌ์„ฑ๋œ ๋ฌธ์ž์—ด์ด ์ž…๋ ฅ๋จ, ์ž…๋ ฅ ๋ฌธ์ž๋Š” a1์ฒ˜๋Ÿผ ์—ด๊ณผ ํ–‰์œผ๋กœ ์ด๋ค„์ง
  • ์ถœ๋ ฅ ์กฐ๊ฑด
    - ์ฒซ์งธ ์ค„์— ๋‚˜์ดํŠธ๊ฐ€ ์ด๋™ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ์ถœ๋ ฅํ•˜์‹œ์˜ค

๋ฌธ์ œ ํ•ด์„ค

์˜ˆ์ œ '์ƒํ•˜์ขŒ์šฐ' ๋ฌธ์ œ์™€ ์œ ์‚ฌ
๋‚˜์ดํŠธ๊ฐ€ ์ด๋™ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒฝ๋กœ๋ฅผ ํ•˜๋‚˜์”ฉ ํ™•์ธํ•˜์—ฌ ์ด๋™ํ•˜๋ฉด ๋จ (๋‹จ, 8 x 8 ์ขŒํ‘œ ํ‰๋ฉด์„ ๋ฒ—์–ด๋‚˜์ง€ ์•Š๋„๋ก ํ™•์ธ)
๋‚˜์ดํŠธ์˜ ์ด๋™ ๊ฒฝ๋กœ๋ฅผ steps ๋ณ€์ˆ˜์— ๋„ฃ๋Š”๋‹ค๋ฉด, steps = [(-2, -1), (-1, -2), (1, -2), (2, -1), (2, 1), (1, 2), (-1, 2), (-2, 1)]

์†Œ์Šค์ฝ”๋“œ


๐Ÿ“ ๊ฒŒ์ž„ ๊ฐœ๋ฐœ

์บ๋ฆญํ„ฐ๊ฐ€ ์žˆ๋Š” ์žฅ์†Œ๋Š” 1 x 1ํฌ๊ธฐ์˜ ์ •์‚ฌ๊ฐํ˜•์œผ๋กœ ์ด๋ค„์ง„ N x M ํฌ๊ธฐ์˜ ์ •์‚ฌ๊ฐํ˜•
๊ฐ๊ฐ์˜ ์นธ์€ ์œก์ง€ ๋˜๋Š” ๋ฐ”๋‹ค, ์บ๋ฆญํ„ฐ๋Š” ๋™์„œ๋‚จ๋ถ ์ค‘ ํ•œ ๊ณณ์„ ๋ฐ”๋ผ๋ด„
๋งต์˜ ๊ฐ ์นธ์€ (A, B)๋กœ ๋‚˜ํƒ€๋‚ผ ์ˆ˜ ์žˆ๊ณ , A๋Š” ๋ถ์ชฝ์œผ๋กœ๋ถ€ํ„ฐ ๋–จ์–ด์ง„ ์นธ์˜ ๊ฐœ์ˆ˜, B๋Š” ์„œ์ชฝ์œผ๋กœ๋ถ€ํ„ฐ ๋–จ์–ด์ง„ ์นธ์˜ ๊ฐœ์ˆ˜์ž„
์บ๋ฆญํ„ฐ๋Š” ์ƒํ•˜์ขŒ์šฐ๋กœ ์›€์ง์ผ ์ˆ˜ ์žˆ๊ณ , ๋ฐ”๋‹ค๋กœ ๋˜์–ด ์žˆ๋Š” ๊ณต๊ฐ„์—๋Š” ๊ฐˆ ์ˆ˜ ์—†์Œ

์•„๋ž˜๋Š” ์บ๋ฆญํ„ฐ์˜ ์›€์ง์ž„์„ ์„ค์ •ํ•˜๊ธฐ ์œ„ํ•ด ์ •ํ•ด ๋†“์€ ๋งค๋‰ด์–ผ
ย  1. ํ˜„ ์œ„์น˜์—์„œ ํ˜„์žฌ ๋ฐฉํ–ฅ์„ ๊ธฐ์ค€์œผ๋กœ ์™ผ์ชฝ ๋ฐฉํ–ฅ(๋ฐ˜์‹œ๊ณ„ ๋ฐฉํ–ฅ์œผ๋กœ 90๋„ ํšŒ์ „ํ•œ ๋ฐฉํ–ฅ)๋ถ€ํ„ฐ ์ฐจ๋ก€๋Œ€๋กœ ๊ฐˆ ๊ณณ์„ ์ •ํ•จ
ย  2. ์บ๋ฆญํ„ฐ์˜ ๋ฐ”๋กœ ์™ผ์ชฝ ๋ฐฉํ–ฅ์— ์•„์ง ๊ฐ€๋ณด์ง€ ์•Š์€ ์นธ์ด ์กด์žฌํ•œ๋‹ค๋ฉด, ์™ผ์ชฝ ๋ฐฉํ–ฅ์œผ๋กœ ํšŒ์ „ํ•œ ๋‹ค์Œ ์™ผ์ชฝ์œผ๋กœ ํ•œ ์นธ์„ ์ „์ง„ํ•จ // ์™ผ์ชฝ ๋ฐฉํ–ฅ์— ๊ฐ€๋ณด์ง€ ์•Š์€ ์นธ์ด ์—†๋‹ค๋ฉด, ์™ผ์ชฝ ๋ฐฉํ–ฅ์œผ๋กœ ํšŒ์ „๋งŒ ์ˆ˜ํ–‰ํ•˜๊ณ  1๋‹จ๊ณ„๋กœ ๋Œ์•„๊ฐ
ย  3. ๋งŒ์•ฝ ๋„ค ๋ฐฉํ–ฅ ๋ชจ๋‘ ์ด๋ฏธ ๊ฐ€๋ณธ ์นธ์ด๊ฑฐ๋‚˜ ๋ฐ”๋‹ค๋กœ ๋˜์–ด ์žˆ๋Š” ์นธ์ธ ๊ฒฝ์šฐ, ๋ฐ”๋ผ๋ณด๋Š” ๋ฐฉํ–ฅ์„ ์œ ์ง€ํ•œ ์ฑ„๋กœ ํ•œ ์นธ ๋’ค๋กœ ๊ฐ€๊ณ  1๋‹จ๊ณ„๋กœ ๋Œ์•„๊ฐ // ๋‹จ, ์ด๋•Œ ๋’ค์ชฝ ๋ฐฉํ–ฅ์ด ๋ฐ”๋‹ค์ธ ์นธ์ด๋ผ ๋’ค๋กœ ๊ฐˆ ์ˆ˜ ์—†๋Š” ๊ฒฝ์šฐ์—๋Š” ์›€์ง์ž„์„ ๋ฉˆ์ถค

๋งค๋‰ด์–ผ์— ๋”ฐ๋ผ ์บ๋ฆญํ„ฐ๋ฅผ ์ด๋™์‹œํ‚จ ๋’ค, ์บ๋ฆญํ„ฐ๊ฐ€ ๋ฐฉ๋ฌธํ•œ ์นธ์˜ ์ˆ˜๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ๋งŒ๋“œ์‹œ์˜ค

  • ์ž…๋ ฅ ์กฐ๊ฑด
    - ์ฒซ์งธ ์ค„์— ๋งต์˜ ์„ธ๋กœ ํฌ๊ธฐ N๊ณผ ๊ฐ€๋กœ ํฌ๊ธฐ M์„ ๊ณต๋ฐฑ์œผ๋กœ ๊ตฌ๋ถ„ํ•˜์—ฌ ์ž…๋ ฅํ•จ(3 โ‰ค N, M โ‰ค 50)
    - ๋‘˜์งธ ์ค„์— ๊ฒŒ์ž„ ์บ๋ฆญํ„ฐ๊ฐ€ ์žˆ๋Š” ์นธ์˜ ์ขŒํ‘œ (A, B)์™€ ๋ฐ”๋ผ๋ณด๋Š” ๋ฐฉํ–ฅ d๊ฐ€ ๊ฐ๊ฐ ์„œ๋กœ ๊ณต๋ฐฑ์œผ๋กœ ๊ตฌ๋ถ„ํ•˜์—ฌ ์ฃผ์–ด์ง
    ย  ๋ฐฉํ–ฅ d์˜ ๊ฐ’: 0 ๋ถ์ชฝ, 1 ๋™์ชฝ, 2 ๋‚จ์ชฝ, 3 ์„œ์ชฝ
    - ์…‹์งธ ์ค„๋ถ€ํ„ฐ ๋งต์ด ์œก์ง€์ธ์ง€ ๋ฐ”๋‹ค์ธ์ง€์— ๋Œ€ํ•œ ์ •๋ณด๊ฐ€ ์ฃผ์–ด์ง
    ย  N๊ฐœ์˜ ์ค„์— ๋งต์˜ ์ƒํƒœ๊ฐ€ ๋ถ์ชฝ๋ถ€ํ„ฐ ๋‚จ์ชฝ ์ˆœ์„œ๋Œ€๋กœ, ๊ฐ ์ค„์˜ ๋ฐ์ดํ„ฐ๋Š” ์„œ์ชฝ๋ถ€ํ„ฐ ๋™์ชฝ ์ˆœ์„œ๋Œ€๋กœ ์ฃผ์–ด์ง, ๋งต์˜ ์™ธ๊ฐ์€ ํ•ญ์ƒ ๋ฐ”๋‹ค
    ย  0 ์œก์ง€, 1 ๋ฐ”๋‹ค
    - ์ฒ˜์Œ ๊ฒŒ์ž„ ์บ๋ฆญํ„ฐ๊ฐ€ ์œ„์น˜ํ•œ ์นธ์˜ ์ƒํƒœ๋Š” ํ•ญ์ƒ ์œก์ง€
  • ์ถœ๋ ฅ ์กฐ๊ฑด
    - ์ฒซ์งธ ์ค„์— ์ด๋™์„ ๋งˆ์นœ ํ›„ ์บ๋ฆญํ„ฐ๊ฐ€ ๋ฐฉ๋ฌธํ•œ ์นธ์˜ ์ˆ˜๋ฅผ ์ถœ๋ ฅ

๋ฌธ์ œ ํ•ด์„ค

์ „ํ˜•์ ์ธ ์‹œ๋ฎฌ๋ ˆ์ด์…˜ ๋ฌธ์ œ, ์š”๊ตฌํ•˜๋Š” ๋‚ด์šฉ์„ ์˜ค๋ฅ˜ ์—†์ด ์„ฑ์‹คํžˆ ๊ตฌํ˜„๋งŒ ํ•˜๋ฉด ํ’€ ์ˆ˜ ์žˆ์Œ
๋‹จ, ๋ฌธ์ œ๋ฅผ ๋ฐ”๋ฅด๊ฒŒ ์ดํ•ดํ•˜์—ฌ ์†Œ์Šค์ฝ”๋“œ๋กœ ์˜ฎ๊ธฐ๋Š” ๊ณผ์ •์ด ๊ฐ„๋‹จํ•˜์ง€ ์•Š์Œ => ๋ฐ˜๋ณต์ ์ธ ์ˆ™๋‹ฌ ํ•„์š”

๋ฐฉํ–ฅ์„ ์„ค์ •ํ•ด์„œ ์ด๋™ํ•˜๋Š” ๋ฌธ์ œ ์œ ํ˜•์—์„œ๋Š” dx, dy๋ผ๋Š” ๋ณ„๋„์˜ ๋ฆฌ์ŠคํŠธ๋ฅผ ๋งŒ๋“ค์–ด ๋ฐฉํ–ฅ ์ •ํ•˜๋Š” ๊ฒƒ์ด ํšจ๊ณผ์ 
2์ฐจ์› ๋ฆฌ์ŠคํŠธ๋ฅผ ์„ ์–ธํ•  ๋•Œ๋Š” ์ปดํ”„๋ฆฌํ—จ์…˜์„ ์ด์šฉํ•˜๋Š” ๊ฒƒ์ด ํšจ์œจ์ 

์†Œ์Šค์ฝ”๋“œ


๐Ÿ“’ ์ด๊ฒƒ์ด ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ๋‹ค ๊ต์žฌ๋ฅผ ํ†ตํ•ด ํ•™์Šตํ•œ ๋‚ด์šฉ์„ ์ •๋ฆฌํ•˜์˜€์Šต๋‹ˆ๋‹ค.

0๊ฐœ์˜ ๋Œ“๊ธ€