๊ธ€ ์ž‘์„ฑ์ž: ์ด์ง€์›๐ŸŒฉ๏ธ
 

1475๋ฒˆ: ๋ฐฉ ๋ฒˆํ˜ธ

์ฒซ์งธ ์ค„์— ๋‹ค์†œ์ด์˜ ๋ฐฉ ๋ฒˆํ˜ธ N์ด ์ฃผ์–ด์ง„๋‹ค. N์€ 1,000,000๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์€ ์ž์—ฐ์ˆ˜ ๋˜๋Š” 0์ด๋‹ค.

www.acmicpc.net

 

๋ฌธ์ œ

๋‹ค์†œ์ด๋Š” ์€์ง„์ด์˜ ์˜†์ง‘์— ์ƒˆ๋กœ ์ด์‚ฌ์™”๋‹ค. ๋‹ค์†œ์ด๋Š” ์ž๊ธฐ ๋ฐฉ ๋ฒˆํ˜ธ๋ฅผ ์˜ˆ์œ ํ”Œ๋ผ์Šคํ‹ฑ ์ˆซ์ž๋กœ ๋ฌธ์— ๋ถ™์ด๋ ค๊ณ  ํ•œ๋‹ค.
๋‹ค์†œ์ด์˜ ์˜†์ง‘์—์„œ๋Š” ํ”Œ๋ผ์Šคํ‹ฑ ์ˆซ์ž๋ฅผ ํ•œ ์„ธํŠธ๋กœ ํŒ๋‹ค. ํ•œ ์„ธํŠธ์—๋Š” 0๋ฒˆ๋ถ€ํ„ฐ 9๋ฒˆ๊นŒ์ง€ ์ˆซ์ž๊ฐ€ ํ•˜๋‚˜์”ฉ ๋“ค์–ด์žˆ๋‹ค. ๋‹ค์†œ์ด์˜ ๋ฐฉ ๋ฒˆํ˜ธ๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ, ํ•„์š”ํ•œ ์„ธํŠธ์˜ ๊ฐœ์ˆ˜์˜ ์ตœ์†Ÿ๊ฐ’์„ ์ถœ๋ ฅํ•˜์‹œ์˜ค. (6์€ 9๋ฅผ ๋’ค์ง‘์–ด์„œ ์ด์šฉํ•  ์ˆ˜ ์žˆ๊ณ , 9๋Š” 6์„ ๋’ค์ง‘์–ด์„œ ์ด์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.)

 

๋‚ด๊ฐ€ ์ž‘์„ฑํ•œ ์ฝ”๋“œ

import sys, math
n = sys.stdin.readline().strip()
num = [0 for _ in range(9)]
for i in n:
if int(i) == 9:
num[6] += 1
else:
num[int(i)] += 1
m = 0
for i in range(len(num)):
if i == 6 and num[i] >= 2:
num[i] = math.ceil(num[i]/2)
if m < num[i]:
m = num[i]
print(int(m))
view raw 1475.py hosted with โค by GitHub
import Foundation
let n = readLine()!
var num = Array(repeating: 0, count: 9)
n.forEach {
if Int(String($0)) == 9 {
num[6] += 1
} else {
num[Int(String($0))!] += 1
}
}
var m = 0
for i in 0..<num.count {
if i == 6 && num[i] >= 2 {
num[i] = Int(ceil(Double(num[i]) / 2.0))
}
if m < num[i] {
m = num[i]
}
}
print(m)
view raw 1475.swift hosted with โค by GitHub

 

ํ’€์ด

  • ์ž…๋ ฅ๋ฐ›์€ ๋ฐฉ ๋ฒˆํ˜ธ ๋ฌธ์ž์—ด์„ ์ˆœํšŒํ•˜๋ฉด์„œ ๋ฏธ๋ฆฌ ๋งŒ๋“ค์–ด๋‘” num ๋ฐฐ์—ด์— ๊ฐœ์ˆ˜๋ฅผ ์…Œ๋‹ค. ์ด ๋•Œ 9๋Š” 6๊ณผ ๊ฐ™์ด ์“ธ ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ 9๋Š” num[6]์— ์นด์šดํŒ…ํ–ˆ๋‹ค.
  • num์„ ์ˆœํšŒํ•˜๋ฉด์„œ ๊ฐ€์žฅ ํฐ ๊ฐ’์„ ์ฐพ๋Š”๋‹ค. ์ด ๋•Œ num[6]์ด 2๋ณด๋‹ค ํฐ ๊ฒฝ์šฐ 2๋กœ ๋‚˜๋ˆ ์„œ ์˜ฌ๋ฆผ ์ฒ˜๋ฆฌํ•ด์„œ ์ €์žฅํ•œ๋‹ค. (6์€ ํ•œ ์„ธํŠธ์— ๋‘ ๊ฐœ ์žˆ์œผ๋ฏ€๋กœ)
  • ์ถœ๋ ฅํ•  ๋•Œ int๋กœ ํ˜•๋ณ€ํ™˜์„ ํ•œ ๋ฒˆ ํ•ด์ค˜์•ผ ํ•จ! ์™œ๋ƒํ•˜๋ฉด num[6]์„ 2๋กœ ๋‚˜๋ˆ„๊ฒŒ ๋˜๋ฉด 2.0 ์ฒ˜๋Ÿผ ์†Œ์ˆ˜์ ์ด ํฌํ•จ๋˜์„œ ๋‚˜์˜จ๋‹ค.

 

์ฃผ์˜ํ•  ์ 

  • 0 โ†’ 1์„ ๋ฐ˜ํ™˜ํ•ด์•ผ ํ•จ
  • 669 โ†’ 2๋ฅผ ๋ฐ˜ํ™˜ํ•ด์•ผ ํ•จ
  • 6699 โ†’ 2๋ฅผ ๋ฐ˜ํ™˜ํ•ด์•ผ ํ•จ
  • 123456789 โ†’ 1์„ ๋ฐ˜ํ™˜ํ•ด์•ผ ํ•จ

 

์ฒ˜์Œ์—๋Š” ๋‹จ์ˆœํ•˜๊ฒŒ num[6] /= 2๋ฅผ ํ•œ ๋’ค์— max()๋ฅผ ์‚ฌ์šฉํ•ด์„œ ์ถœ๋ ฅํ–ˆ๋Š”๋ฐ, 10%์—์„œ ์‹คํŒจํ•ด์„œ ๋ฐ˜๋ก€๋ฅผ ์ฐพ์•„๋ดค๋‹ค. ๋‚ด๊ฐ€ ํ‹€๋ฆฐ ์ด์œ ๋Š” 6์„ ์ž…๋ ฅํ•  ๋•Œ 0์ด ๋ฐ˜ํ™˜๋˜์„œ์˜€๋‹ค. ํ™€ํ™€

๋ฐ˜์‘ํ˜•

๋Œ“๊ธ€

๋Œ“๊ธ€์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.