• Home
  • About
    • on Weekend photo

      on Weekend

      ๐™Ž๐™ฉ๐™ช๐™™๐™ฎ๐™ž๐™ฃ๐™œ

    • Learn More
    • Instagram
    • Github
  • Archive
    • All Posts
    • All Tags
    • All Categories
  • Categories
    • Problem Solving
    • TIL
    • Study
    • Etc
    • ํ•„์‚ฌ
  • Projects

[๋ฐฑ์ค€] 2891

23 Jan 2021

๋ฐฑ์ค€ 2891 : ์นด์•ฝ๊ณผ ๊ฐ•ํ’

๋ฌธ์ œ ๋งํฌ

์ฝ”๋“œ

N, S, R = map(int, input().split())
broken = []
have = []
if(S > 0) : broken = list(map(int, input().split()))
if(R > 0) : have = list(map(int, input().split()))

arr = [1]*N
for i in broken :
  arr[i-1] = 0
for i in have :
  t = i-1
  if(arr[t]==0) : arr[t]=1
  else :
    if(t-1 >= 0 and arr[t-1]==0) :
      arr[t-1] = 1
      continue
    elif(t+1 < N and arr[t+1]==0) :
      arr[t+1] = 1

ans = 0
for team in arr :
  if(team == 0) :
    ans += 1

print(ans)

์ฝ”๋“œ๋ฆฌ๋ทฐ

์งง๊ฒŒ ์ž˜ ํ‘ผ ๋ธ”๋กœ๊ทธ ๊ธ€์ด ์žˆ์–ด์„œ ํ•ด๋‹น ๊ธ€์„ ๊ณต์œ ํ•ฉ๋‹ˆ๋‹ค.
๋งˆ์ง€๋ง‰์— team == 0์ผ ๋•Œ cnt๋ฅผ ์ฆ๊ฐ€์‹œํ‚ค๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ, ์ถœ์ „ํ•˜์ง€ ๋ชปํ•˜๋Š” ๊ฒฝ์šฐ count๋ฅผ ๊ฐ์†Œ์‹œํ‚ค๋Š” ์ ์ด ๋งค์šฐ ๋˜‘๋˜‘ํ•ฉ๋‹ˆ๋‹ค.
๊ทธ๋ฆฌ๊ณ  abs()๋ฅผ ํ†ตํ•ด ๋ฐ”๋กœ ์˜†์ธ์ง€ ์•„๋‹Œ์ง€ ์—ฌ๋ถ€๋ฅผ ํŒ๋‹จํ•˜๋Š” ๊ฒƒ๋„ ์•„์ฃผ ์ข‹๋„ค์š”. ์—ฌ๋ถ„์˜ ๋ฐฐ๋ฅผ ๊ฐ€์ ธ์˜จ ํŒ€๋“ค ์ค‘ ๋ฒˆํ˜ธ ์ฐจ์ด๊ฐ€ 1 ๋˜๋Š” 0(์ž๊ธฐ์ž์‹ )์œผ๋กœ ๋ถ„๋ฆฌํ•œ ๊ฒƒ๋„ ์ข‹์Šต๋‹ˆ๋‹ค. ๋‚˜์•„๊ฐ€ ์ž๊ธฐ ์ž์‹ ์—๊ฒŒ๋“ , ๋‹ค๋ฅธ ํŒ€์—๊ฒŒ๋“  ๋ฐฐ๋ฅผ ๋นŒ๋ ค์คฌ๋‹ค๋ฉด have ๋ฐฐ์—ด์—์„œ ์‚ญ์ œํ•˜๊ณ  ์—ฌ๋ถ„์˜ ๋ฐฐ๋ฅผ ๊ฐ€์ง„ ํŒ€์˜ ๊ฐฏ์ˆ˜์—์„œ ํ•˜๋‚˜๋ฅผ ๋นผ์ค€๋‹ค๋Š” ์ ์ด ํšจ์œจ์ ์ž…๋‹ˆ๋‹ค.
๋‹จ์ˆœํ•˜๊ฒŒ 2์ค‘ for loop์„ ์ˆœํšŒํ•˜๋ฉฐ ํ’€์—ˆ๋„ค์š”.



problem_solvingpython Share Tweet +1