๋ฌธ์
ํ ๋ง์์ ๋ชจํ๊ฐ๊ฐ N๋ช ์์ต๋๋ค. ๋ชจํ๊ฐ ๊ธธ๋์์๋ N๋ช ์ ๋ชจํ๊ฐ๋ฅผ ๋์์ผ๋ก '๊ณตํฌ๋'๋ฅผ ์ธก์ ํ๋๋ฐ, '๊ณตํฌ๋'๊ฐ ๋์ ๋ชจํ๊ฐ๋ ์ฝ๊ฒ ๊ณตํฌ๋ฅผ ๋๊ปด ์ํ ์ํฉ์์ ์ ๋๋ก ๋์ฒํ ๋ฅ๋ ฅ์ด ๋จ์ด์ง๋๋ค.
๋ชจํ๊ฐ ๊ธธ๋์ฅ์ธ ๋๋น์ด๋ ๋ชจํ๊ฐ ๊ทธ๋ฃน์ ์์ ํ๊ฒ ๊ตฌ์ฑํ๊ณ ์ ๊ณตํฌ๋๊ฐ X์ธ ๋ชจํ๊ฐ๋ ๋ฐ๋์ X๋ช ์ด์์ผ๋ก ๊ตฌ์ฑํ ๋ชจํ๊ฐ ๊ทธ๋ฃน์ ์ฐธ์ฌํด์ผ ์ฌํ์ ๋ ๋ ์ ์๋๋ก ๊ท์ ํ์ต๋๋ค.
๋๋น์ด๋ ์ต๋ ๋ช ๊ฐ์ ๋ชจํ๊ฐ ๊ทธ๋ฃน์ ๋ง๋ค ์ ์๋์ง ๊ถ๊ธํฉ๋๋ค. N๋ช ์ ๋ชจํ๊ฐ์ ๋ํ ์ ๋ณด๊ฐ ์ฃผ์ด์ก์ ๋, ์ฌํ์ ๋ ๋ ์ ์๋ ๊ทธ๋ฃน ์์ ์ต๋๊ฐ์ ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์ธ์.
ํด์ค ์ฝ๋
n = int(input())
data = list(map(int,input().split()))
data.sort()
result = 0 # ์ด ๊ทธ๋ฃน์ ์
count = 0 # ํ์ฌ ๊ทธ๋ฃน์ ํฌํจ๋ ๋ชจํ๊ฐ์ ์
for i in data: # ๊ณตํฌ๋๋ฅผ ๋ฎ์ ๊ฒ๋ถํฐ ํ๋์ฉ ํ์ธํ๋ฉฐ
count+= 1 # ํ์ฌ ๊ทธ๋ฃน์ ํด๋น ๋ชจํ๊ฐ๋ฅผ ํฌํจ์ํค๊ธฐ
if count >= i: # ํ์ฌ ๊ทธ๋ฃน์ ํฌํจ๋ ๋ชจํ๊ฐ์ ์๊ฐ ํ์ฌ์ ๊ณตํฌ๋ ์ด์์ด๋ผ๋ฉด, ๊ทธ๋ฃน ๊ฒฐ์ฑ
result += 1 # ์ด ๊ทธ๋ฃน์ ์ ์ฆ๊ฐ์ํค๊ธฐ
count = 0 # ํ์ฌ ๊ทธ๋ฃน์ ํฌํจ๋ ๋ชจํ๊ฐ์ ์ ์ด๊ธฐํ
print(result) # ์ด ๊ทธ๋ฃน์ ์ ์ถ๋ ฅ
ํด์ค
์ต๋ํ์ ๊ทธ๋ฃน์ ๋ง๋ค๊ธฐ ์ํด์๋ ๊ฐ ๊ทธ๋ฃน์ ํฌํจ๋ ์ธ์์ ์๊ฐ ๊ฐ์ฅ ์ ๊ฒ ๋ง๋ค๋ฉด ๋๋ค. ๊ทธ๋ฌ๊ธฐ ์ํด์๋, ์ผ๋จ ๋ฆฌ์คํธ๋ฅผ ์ค๋ฆ์ฐจ์์ผ๋ก ์ ๋ ฌํด์ค ํ ๋ฐ๋ณต๋ฌธ์ ํตํด ํ์ฌ ๊ทธ๋ฃน์ ํฌํจ๋ ๊ทธ๋ฃน์ ์๊ฐ ํ์ฌ์ ๊ณตํฌ๋๋ณด๋ค ํฌ๊ฑฐ๋ ๊ฐ๋ค๋ฉด ๊ทธ๋ฃน์ ๊ฒฐ์ฑํด์ค ํ ์ด ๊ทธ๋ฃน์ ์๋ฅผ ์ฆ๊ฐ์ํค๊ณ ํ์ฌ ๊ทธ๋ฃน์ ํฌํจ๋ ๋ชจํ๊ฐ์ ์๋ ์ด๊ธฐํ ํด์ฃผ๋ฉด ๋๋ค.