๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐Ÿ”ฅ PS(Problem Solving) ๐Ÿ”ฅ/BOJ

[BOJ] #17090 ๋ฏธ๋กœ ํƒˆ์ถœํ•˜๊ธฐ

by dar0m! 2020. 7. 16.
์‹œ๊ฐ„ ์ œํ•œ ๋ฉ”๋ชจ๋ฆฌ ์ œํ•œ ์ •๋‹ต ๋น„์œจ
 1์ดˆ  512MB 30.346%
 

17090๋ฒˆ: ๋ฏธ๋กœ ํƒˆ์ถœํ•˜๊ธฐ

ํฌ๊ธฐ๊ฐ€ N×M์ธ ๋ฏธ๋กœ๊ฐ€ ์žˆ๊ณ , ๋ฏธ๋กœ๋Š” ํฌ๊ธฐ๊ฐ€ 1×1์ธ ์นธ์œผ๋กœ ๋‚˜๋ˆ„์–ด์ ธ ์žˆ๋‹ค. ๋ฏธ๋กœ์˜ ๊ฐ ์นธ์—๋Š” ๋ฌธ์ž๊ฐ€ ํ•˜๋‚˜ ์ ํ˜€์žˆ๋Š”๋ฐ, ์ ํ˜€์žˆ๋Š” ๋ฌธ์ž์— ๋”ฐ๋ผ์„œ ๋‹ค๋ฅธ ์นธ์œผ๋กœ ์ด๋™ํ•  ์ˆ˜ ์žˆ๋‹ค. ์–ด๋–ค ์นธ(r, c)์— ์ ํžŒ ๋ฌธ๏ฟฝ

www.acmicpc.net

 

๋ฌธ์ œ

ํฌ๊ธฐ๊ฐ€ N×M์ธ ๋ฏธ๋กœ๊ฐ€ ์žˆ๊ณ , ๋ฏธ๋กœ๋Š” ํฌ๊ธฐ๊ฐ€ 1×1์ธ ์นธ์œผ๋กœ ๋‚˜๋ˆ„์–ด์ ธ ์žˆ๋‹ค. ๋ฏธ๋กœ์˜ ๊ฐ ์นธ์—๋Š” ๋ฌธ์ž๊ฐ€ ํ•˜๋‚˜ ์ ํ˜€์žˆ๋Š”๋ฐ, ์ ํ˜€์žˆ๋Š” ๋ฌธ์ž์— ๋”ฐ๋ผ์„œ ๋‹ค๋ฅธ ์นธ์œผ๋กœ ์ด๋™ํ•  ์ˆ˜ ์žˆ๋‹ค.

์–ด๋–ค ์นธ(r, c)์— ์ ํžŒ ๋ฌธ์ž๊ฐ€

  • U์ธ ๊ฒฝ์šฐ์—๋Š” (r-1, c)๋กœ ์ด๋™ํ•ด์•ผ ํ•œ๋‹ค.
  • R์ธ ๊ฒฝ์šฐ์—๋Š” (r, c+1)๋กœ ์ด๋™ํ•ด์•ผ ํ•œ๋‹ค.
  • D์ธ ๊ฒฝ์šฐ์—๋Š” (r+1, c)๋กœ ์ด๋™ํ•ด์•ผ ํ•œ๋‹ค.
  • L์ธ ๊ฒฝ์šฐ์—๋Š” (r, c-1)๋กœ ์ด๋™ํ•ด์•ผ ํ•œ๋‹ค.

๋ฏธ๋กœ์—์„œ ํƒˆ์ถœ ๊ฐ€๋Šฅํ•œ ์นธ์˜ ์ˆ˜๋ฅผ ๊ณ„์‚ฐํ•ด๋ณด์ž. ํƒˆ์ถœ ๊ฐ€๋Šฅํ•œ ์นธ์ด๋ž€, ๊ทธ ์นธ์—์„œ ์ด๋™์„ ์‹œ์ž‘ํ•ด์„œ ์นธ์— ์ ํžŒ๋Œ€๋กœ ์ด๋™ํ–ˆ์„ ๋•Œ, ๋ฏธ๋กœ์˜ ๊ฒฝ๊ณ„ ๋ฐ–์œผ๋กœ ์ด๋™ํ•˜๊ฒŒ ๋˜๋Š” ์นธ์„ ์˜๋ฏธํ•œ๋‹ค.

 

ํ•ด๊ฒฐ

key point, chk๋ฐฐ์—ด์˜ ๊ฐ’์ด 0์ด๋ฉด ํƒ์ƒ‰ ๊ฐ€๋Šฅ, -1์ด๋ฉด ํƒ์ƒ‰์ค‘, 1์ด๋ฉด ํƒˆ์ถœ ๊ฐ€๋Šฅ, 2์ด๋ฉด ํƒˆ์ถœ ๋ถˆ๊ฐ€๋Šฅ
  • ํ•œ ๋ฒˆ ํƒ์ƒ‰ํ•œ ๊ฒฝ๋กœ์˜ ์ผ๋ถ€๋ฅผ ๋˜ ๋‹ค์‹œ ๋ฐฉ๋ฌธํ•˜๊ฒŒ ๋œ๋‹ค๊ณ  ํ•˜๋”๋ผ๋„ ๊ฒฐ๊ณผ๋Š” ์ด๋ฏธ ํƒ์ƒ‰ํ–ˆ์„ ๋•Œ์˜ ๊ฒฐ๊ณผ์™€ ๊ฐ™๊ฒŒ ๋œ๋‹ค.
  • ๋”ฐ๋ผ์„œ ๊ฐ ๊ฒฝ๋กœ๋ฅผ ๋งค๋ฒˆ ํƒ์ƒ‰ํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ chk๋ฐฐ์—ด์˜ ๊ฐ’์œผ๋กœ ํƒˆ์ถœ๊ฐ€๋Šฅ์—ฌ๋ถ€๋ฅผ ํŒ๋‹จํ•œ๋‹ค. 
  1. chk๊ฐ€ 0์ด ๋˜๋Š” ๊ฒฝ์šฐ๋Š” ๋ฏธ๋กœํƒ์ƒ‰์„ ์‹œ์ž‘ํ•˜๊ธฐ ์ด์ „์ธ ์ดˆ๊ธฐํ™” ์ƒํƒœ์ผ ๋•Œ๋งŒ ๊ฐ€๋Šฅํ•˜๋‹ค. → ์ดˆ๊ธฐํ™”
  2. chk๊ฐ€ -1์ด ๋˜๋Š” ๊ฒฝ์šฐ๋Š” ํƒ์ƒ‰์„ ์‹œ์ž‘ํ•œ ํ›„์ด๊ณ , ๊ฒฐ๊ณผ ๊ฐ’์„ ๋ฐ›๊ธฐ ์ด์ „์ธ ์ƒํƒœ์ด๋‹ค. → ํƒ์ƒ‰์ค‘
  3. chk๊ฐ€ 1์ด ๋˜๋Š” ๊ฒฝ์šฐ๋Š” ๋ฏธ๋กœ๋ฅผ ํƒ์ƒ‰ํ•˜๋‹ค๊ฐ€ ๊ฒฝ๊ณ„๋ฐ–์„ ๋งŒ๋‚˜๋Š” ๊ฒฝ์šฐ 1์„ ๋ฆฌํ„ดํ•˜๋ฉด์„œ ์ €์žฅ๋œ๋‹ค. ๋ฆฌํ„ด๋œ ๋ชจ๋“  ๊ฒฝ๋กœ์— ๋Œ€ํ•ด์„œ ํ•ด๋‹น ์ธ๋ฑ์Šค์˜ chk๊ฐ’์ด 1์ด ์ €์žฅ๋˜๊ฒŒ ๋œ๋‹ค. → ํƒˆ์ถœ ๊ฐ€๋Šฅ
  4. chk๊ฐ€ 2์ด ๋˜๋Š” ๊ฒฝ์šฐ๋Š” ๋ฏธ๋กœ๋ฅผ ํƒ์ƒ‰ํ•˜๋‹ค๊ฐ€ ์‚ฌ์ดํด์„ ์ด๋ฃจ๊ฒŒ ๋  ๋•Œ(์ž์‹ ์˜ ๊ฒฝ๋กœ๋ฅผ ๋‹ค์‹œ ๋งŒ๋‚จ) ํ•ด๋‹น ๊ฒฝ๋กœ๋กœ๋Š” ๊ฒฝ๊ณ„๋ฐ–์œผ๋กœ ์ ˆ๋Œ€ ์ด๋™ํ•  ์ˆ˜ ์—†์œผ๋ฏ€๋กœ ํƒˆ์ถœ ๋ถˆ๊ฐ€๋Šฅ์ด๊ณ  2๋ฅผ ๋ฆฌํ„ดํ•œ๋‹ค. → ํƒˆ์ถœ ๋ถˆ๊ฐ€๋Šฅ

 

์ฝ”๋“œ

๋ฉ”๋ชจ๋ฆฌ ์‹œ๊ฐ„
 10920 KB  8 ms

๋Œ“๊ธ€