๐ ๋ฌธ์
ํ ๋ง์์ ๋ชจํ๊ฐ๊ฐ N๋ช ์์ต๋๋ค. ๋ชจํ๊ฐ ๊ธธ๋์์๋ N๋ช ์ ๋ชจํ๊ฐ๋ฅผ ๋์์ผ๋ก '๊ณตํฌ๋'๋ฅผ ์ธก์ ํ๋๋ฐ,'๊ณตํฌ๋'๊ฐ ๋์ ๋ชจํ๊ฐ๋ ์ฝ๊ฒ ๊ณตํฌ๋ฅผ ๋๊ปด ์ํ ์ํฉ์์ ์ ๋๋ก ๋์ฒํ ๋ฅ๋ ฅ์ด ๋จ์ด์ง๋๋ค. ๋ชจํ๊ฐ ๊ธธ๋์ฅ์ธ ๋๋น์ด๋ ๋ชจํ๊ฐ ๊ทธ๋ฃน์ ์์ ํ๊ฒ ๊ตฌ์ฑํ๊ณ ์ ๊ณตํฌ๋๊ฐ X์ธ ๋ชจํ๊ฐ๋ ๋ฐ๋์ X๋ช ์ด์์ผ๋ก๊ตฌ์ฑํ ๋ชจํ๊ฐ ๊ทธ๋ฃน์ ์ฐธ์ฌํด์ผ ์ฌํ์ ๋ ๋ ์ ์๋๋ก ๊ท์ ํ์ต๋๋ค. ๋๋น์ด๋ ์ต๋ ๋ช ๊ฐ์ ๋ชจํ๊ฐ ๊ทธ๋ฃน์ ๋ง๋ค ์ ์๋์ง ๊ถ๊ธํฉ๋๋ค.
N๋ช ์ ๋ชจํ๊ฐ์ ๋ํ ์ ๋ณด๊ฐ ์ฃผ์ด์ก์ ๋, ์ฌํ์ ๋ ๋ ์ ์๋ ๊ทธ๋ฃน ์์ ์ต๋๊ฐ์ ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์ธ์.
์๋ฅผ ๋ค์ด, N = 5์ด๊ณ , ๊ฐ ๋ชจํ๊ฐ์ ๊ณตํฌ๋๊ฐ ๋ค์๊ณผ ๊ฐ๋ค๊ณ ๊ฐ์ ํฉ์๋ค.
2 3 1 2 2
์ด ๊ฒฝ์ฐ ๊ทธ๋ฃน 1์ ๊ณตํฌ๋๊ฐ 1,2,3์ธ ๋ชจํ๊ฐ๋ฅผ ํ ๋ช ์ฉ ๋ฃ๊ณ , ๊ทธ๋ฃน 2์ ๊ณตํฌ๋๊ฐ 2์ธ ๋จ์ ๋ ๋ช ์ ๋ฃ๊ฒ ๋๋ฉด ์ด 2๊ฐ์ ๊ทธ๋ฃน์ ๋ง๋ค ์ ์์ต๋๋ค. ๋ํ ๋ช ๋ช ์ ๋ชจํ๊ฐ๋ ๋ง์์ ๊ทธ๋๋ก ๋จ์ ์์ด๋ ๋๊ธฐ ๋๋ฌธ์, ๋ชจ๋ ๋ชจํ๊ฐ๋ฅผ ํน์ ํ ๊ทธ๋ฃน์ ๋ฃ์ ํ์๋ ์์ต๋๋ค.
๐ ์ฝ๋
# ์ฐ์ต๋ฌธ์ - ๊ทธ๋ฆฌ๋ - ๋ชจํ๊ฐ ๊ธธ๋
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) # ์ด ๊ทธ๋ฃน์ ์ ์ถ๋ ฅ