๊ธฐ๋ก๋ฐฉ

BOJ_17358 : ๋ณต๋ถˆ๋ณต์œผ๋กœ ์ง€๊ตฌ ๋ฉธ๋ง ๋ณธ๋ฌธ

CodingTest/Python

BOJ_17358 : ๋ณต๋ถˆ๋ณต์œผ๋กœ ์ง€๊ตฌ ๋ฉธ๋ง

Soom_1n 2022. 10. 19. 17:22

๐Ÿ‘‰ ๋ฌธ์ œ๋งํฌ

 

17358๋ฒˆ: ๋ณต๋ถˆ๋ณต์œผ๋กœ ์ง€๊ตฌ ๋ฉธ๋ง

(2,1,4,3), (3,4,1,2), (4,3,2,1) ์ด 3๊ฐ€์ง€ ๊ฒฝ์šฐ๊ฐ€ ๊ฐ€๋Šฅํ•˜๋‹ค.

www.acmicpc.net



๐Ÿ”ธ ๋ฌธ์ œ ๋ถ„์„ ๐Ÿ”ธ

  • n๊ฐœ์˜ ์ปต์ด ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ๋ฐฐ์น˜๋˜์–ด ์žˆ๋Š”๋ฐ, ํ•œ ๋ฒˆ์”ฉ ๋ฐ”๊ฟ€๋•Œ ๊ฐ€๋Šฅํ•œ ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.
    • 4๊ฐœ์˜ ์ปต์„ ๋ฐ”๊พธ๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.
      • ๋จผ์ € 1๊ฐœ๋ฅผ ๊ณจ๋ผ๋†“๊ณ , ๋ฐ”๊ฟ€ ์ˆ˜ ์žˆ๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜ : 3
      • ๋‚จ์€ 2๊ฐœ์—์„œ 1๊ฐœ๋ฅผ ๊ณจ๋ผ๋†“๊ณ , ๋ฐ”๊ฟ€ ์ˆ˜ ์žˆ๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜ : 1
      • 3*1 = 3๊ฐ€์ง€์ด๋‹ค.
    • 6๊ฐœ์˜ ์ปต์„ ๋ฐ”๊พธ๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜
      • 1๊ฐœ ๊ณ ๋ฅด๊ณ , ๋ฐ”๊ฟ€ ์ˆ˜ ์žˆ๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜ : 5
      • ๋‚จ์€ 4๊ฐœ์—์„œ 1๊ฐœ ๊ณจ๋ผ๋†“๊ณ , ๋ฐ”๊ฟ€ ์ˆ˜ ์žˆ๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜ : 3
      • ๋‚จ์€ 2๊ฐœ์—์„œ 1๊ฐœ ๊ณจ๋ผ๋†“๊ณ , ๋ฐ”๊ฟ€ ์ˆ˜ ์žˆ๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜ : 1
      • 5*3*1 = 15๊ฐ€์ง€์ด๋‹ค.
    • ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ๊ณฑํ•˜๋‹ค ๋ณด๋ฉด ๋„ˆ๋ฌด ์ปค์งˆ ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ, ๋ฌธ์ œ์กฐ๊ฑด์— ๋”ฐ๋ผ 10^9+7์˜ ๋‚˜๋จธ์ง€ ์—ฐ์‚ฐ์„ ๋ฐ˜๋ณตํ•œ๋‹ค.

๐Ÿ”ธ ์ฝ”๋“œ ๐Ÿ”ธ

n = int(input())
arr = [i for i in range(1,n+1)]

answer = 1

while n > 0:
    answer *= n-1 
    answer %= 1000000007
    n -= 2

print(answer)

๐Ÿ”ธ ์ฝ”๋“œ ํ•ด์„ ๐Ÿ”ธ

  • n์ด ์–‘์ˆ˜๋ฉด ๋‹ค์Œ ๊ณ„์‚ฐ์„ ๋ฐ˜๋ณตํ•œ๋‹ค.
    • n-1๋ฅผ ๊ณฑํ•˜๊ณ  ๋‚˜๋จธ์ง€ ์—ฐ์‚ฐ์„ ์ˆ˜ํ–‰ํ•œ๋‹ค.
    • n์—์„œ ๋ฐ”๋€ 2๊ฐœ์˜ ์ปต์„ ์ œ๊ฑฐํ•œ๋‹ค. (n-=2)

๐Ÿ”ธ end ๐Ÿ”ธ

  • ์ฝ”๋“œ๋Š” ๊ฐ„๋‹จํ–ˆ์ง€๋งŒ, ๋ฌธ์ œ๋ฅผ ์ดํ•ดํ•˜๊ณ  ํ‘ธ๋Š”๊ฒŒ ์ƒ๊ฐ๋ณด๋‹ค ์–ด๋ ค์› ๋˜ ๊ฒƒ ๊ฐ™๋‹ค.
  • ์ˆ˜ํ•™, ํŠนํžˆ ์กฐํ•ฉ๋ก ์€...์–ด๋ ต๊ฒŒ ๋“ค์–ด๊ฐ€์ง€๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์€ ๊ฒƒ ๊ฐ™๋‹ค.

728x90

'CodingTest > Python' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

BOJ_1193 : ๋ถ„์ˆ˜์ฐพ๊ธฐ  (0) 2022.10.19
BOJ_5622 : ๋‹ค์ด์–ผ  (0) 2022.10.19
BOJ_14696 : ๋”ฑ์ง€๋†€์ด  (0) 2022.10.19
BOJ_18238 : ZOAC 2  (0) 2022.10.19
BOJ_1789 : ์ˆ˜๋“ค์˜ ํ•ฉ  (0) 2022.10.13