๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐Ÿ”‘ ์•Œ๊ณ ๋ฆฌ์ฆ˜/๋ฐฑ์ค€ Python

[๋ฐฑ์ค€] ํŒŒ์ด์ฌ/ ๊ทธ๋ฆฌ๋”” 11047_๋™์ „0 , 1541_์žƒ์–ด๋ฒ„๋ฆฐ ๊ด„ํ˜ธ

by Tamii 2021. 6. 8.
๋ฐ˜์‘ํ˜•

๐Ÿ“Œ11047 ๋™์ „0

 

https://www.acmicpc.net/problem/11047

 

11047๋ฒˆ: ๋™์ „ 0

์ฒซ์งธ ์ค„์— N๊ณผ K๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. (1 ≤ N ≤ 10, 1 ≤ K ≤ 100,000,000) ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ N๊ฐœ์˜ ์ค„์— ๋™์ „์˜ ๊ฐ€์น˜ Ai๊ฐ€ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ฃผ์–ด์ง„๋‹ค. (1 ≤ Ai ≤ 1,000,000, A1 = 1, i ≥ 2์ธ ๊ฒฝ์šฐ์— Ai๋Š” Ai-1์˜ ๋ฐฐ์ˆ˜)

www.acmicpc.net

 

 

๋‚ด ํ’€์ด

import sys
input= sys.stdin.readline

coins=[]
coinCnt=0

n,k = map(int,input().split())

for i in range(n):
    coins.append(int(input()))

left=0
for j in range(len(coins),0,-1):
    coinCnt+=k//coins[j-1]
    k=k%coins[j-1]

print(coinCnt)

 

๋™์ „๋ฐฐ์—ด์„ ๊ฑฐ๊พธ๋กœ ๋Œ๋ฉฐ ๋‚˜๋จธ์ง€ ๊ฐ’์„ ๊ณ„์† ๋‚˜๋ˆ ์ฃผ๊ณ  , ๋ชซ๊ฐ’์„ ๋™์ „์˜ ๊ฐœ์ˆ˜๋กœ cntํ•œ๋‹ค

ํ•œ๋ฒˆ์— ์ •๋‹ต์ด์—ˆ์ง€๋งŒ, ๋ชจ๋“  ๋™์ „์—์„œ ๊ณ„์‚ฐ์„ ํ•ด์•ผํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋ถˆํ•„์š”ํ•œ ์ž‘์—…์„ ์ค„์ผ ์ˆ˜ ์—†์„๊นŒ? ์ƒ๊ฐํ–ˆ๋‹ค.

 

๊ฒ€์ƒ‰ํ•ด๋ณด๋‹ˆ for๋ฌธ ์•ˆ์—์„œ if k==0 ์กฐ๊ฑด์„ ์ค˜์„œ ๋ฐ˜๋ณต๋ฌธ์„ ๋Œ๊ธฐ ์ „์— ๋๋‚ด๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ์–ด์„œ ๋„ฃ์–ด๋ดค๋”๋‹ˆ ํฐ ์‹œ๊ฐ„ ์ฐจ์ด๊ฐ€ ์—†์—ˆ๋‹ค,

 ์•„๋งˆ ๋™์ „์˜ ์ข…๋ฅ˜๊ฐ€ ์—„์ฒญ๋‚˜๊ฒŒ ๋งŽ์•„์ง€๋ฉด ํšจ๊ณผ๊ฐ€ ์žˆ์„ ๊ฒƒ ๊ฐ™๋‹ค.

 


 

๐Ÿ“Œ1541_ ์žƒ์–ด๋ฒ„๋ฆฐ ๊ด„ํ˜ธ

https://www.acmicpc.net/problem/1541

 

1541๋ฒˆ: ์žƒ์–ด๋ฒ„๋ฆฐ ๊ด„ํ˜ธ

์ฒซ์งธ ์ค„์— ์‹์ด ์ฃผ์–ด์ง„๋‹ค. ์‹์€ ‘0’~‘9’, ‘+’, ๊ทธ๋ฆฌ๊ณ  ‘-’๋งŒ์œผ๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๊ณ , ๊ฐ€์žฅ ์ฒ˜์Œ๊ณผ ๋งˆ์ง€๋ง‰ ๋ฌธ์ž๋Š” ์ˆซ์ž์ด๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์—ฐ์†ํ•ด์„œ ๋‘ ๊ฐœ ์ด์ƒ์˜ ์—ฐ์‚ฐ์ž๊ฐ€ ๋‚˜ํƒ€๋‚˜์ง€ ์•Š๊ณ , 5์ž๋ฆฌ๋ณด๋‹ค

www.acmicpc.net

๋‚ด ํ’€์ด

input= sys.stdin.readline

problem = input().strip()

symbol = re.compile('\D').findall(problem)
print((problem[:problem.index('-')]))  // 55

 

์ฒ˜์Œ ์ƒ๊ฐํ•œ ๋ช‡๊ฐ€์ง€ ๋ฐฉ๋ฒ• 

1. ์ •๊ทœํ‘œํ˜„์‹์œผ๋กœ ์—ฐ์‚ฐ์„๋ฝ‘์•„์„œ ๋‚˜๋จธ์ง€ ์ˆซ์ž๋กœ ๊ณ„์‚ฐํ•˜์ž

2. for ๋ฌธ์„ ๋Œ๋ฉฐ  '-', '+'์ผ๋•Œ๋ฅผ ๋‹ค ๊ณ„์‚ฐํ•˜์ž

 

์ผ๋‹จ ๋‘๊ฐ€์ง€ ๋ฐฉ๋ฒ• ๋‹ค ์ ‘๊ทผ์ด ํ‹€๋ ธ๋‹ค.

๊ทธ ์ด์œ ๋Š” ๋ฌธ์ œ๊ฐ€ ๊ทธ๋ƒฅ ๊ณ„์‚ฐํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹Œ ์ตœ์†Œ๊ฐ’์„ ๊ตฌํ•˜๋Š” ๊ฒƒ์ด๊ธฐ ๋•Œ๋ฌธ .. 

 

์˜ค๋Š˜ ํ•˜๋ฃจ์ข…์ผ ์ฝ”๋”ฉํ•˜๋‹ค๊ฐ€ ์™€์„œ ํ”ผ๊ณคํ•œ ์ƒํƒœ๋กœ ํ’€์—ˆ๋”๋‹ˆ ๋ฌธ์ œ๋ฅผ ์ œ๋Œ€๋กœ ์ฝ์ง€ ์•Š๋Š” ์Šต๊ด€์ด ๋„์กŒ๋‹ค. ใ… ใ… ใ… 

 

 

๋‹ค๋ฅธ ํ’€์ด

ans=0
problem = input().split('-');
for i in problem[0].split('+'):
    ans+=int(i)

for j in problem[1:]:
    for k in j.split('+'):
        ans-=int(k)

print(ans)

1) '-'๊ฐ€ ๋‚˜์˜ค๊ธฐ ์ „๊นŒ์ง€ ๋”ํ•œ๋‹ค

2) '-'๊ฐ€ ๋‚˜์˜จ ๋’ค์˜ ๊ฐ’๋“ค์€ ๋ชจ๋‘ ๋บ€๋‹ค

 

์ตœ์†Œ๊ฐ’์ด ๋‚˜์™€์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— - ๋‚˜์˜จ ์ดํ›„๋กœ๋ถ€ํ„ฐ๋Š” ๊ด„ํ˜ธ๋ฅผ ๋‹ค ๋ฌถ์–ด์„œ  ๋นผ๋ฒ„๋ฆฌ๋Š” ๊ฒƒ์ด ๊ฐ€์žฅ ์ตœ์†Œ์ธ ๋ฐฉ๋ฒ•์ด์—ˆ๋‹ค.

 

 

๐Ÿ’™ ๋ฌธ์ œ๋ฅผ ๋ณด๊ณ ๋‚˜์„œ ์ถฉ๋ถ„ํžˆ ๊ณ ๋ฏผํ•˜๊ณ  ํ‘ธ๋Š” ์Šต๊ด€์„ ๊ฐ€์ ธ์•ผ ๊ฒ ๋‹ค.

๋‹จ์ˆœํžˆ ๋น ๋ฅด๊ฒŒ ํ’€๊ณ  ์‹ถ์–ด์„œ ํœ™ ์ฝ๊ณ  ํ’€์—ˆ๋”๋‹ˆ ์™„์ „ ์˜ค๋žซ๋™์•ˆ ํ˜ผ์ž ๋‹ค๋ฅธ๋ฌธ์ œ๋ฅผ ํ’€์—ˆ๋‹ค... 

 

๋Œ“๊ธ€