λ³Έλ¬Έ λ°”λ‘œκ°€κΈ°

Python/λ°±μ€€

#20 [python/λ°±μ€€] python λ¬Έμ œμ§‘ 2

728x90

 

πŸ’₯ 1934번: μ΅œμ†Œκ³΅λ°°μˆ˜

 

 

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

 

1934번: μ΅œμ†Œκ³΅λ°°μˆ˜

두 μžμ—°μˆ˜ A와 B에 λŒ€ν•΄μ„œ, A의 λ°°μˆ˜μ΄λ©΄μ„œ B의 배수인 μžμ—°μˆ˜λ₯Ό A와 B의 곡배수라고 ν•œλ‹€. 이런 곡배수 μ€‘μ—μ„œ κ°€μž₯ μž‘μ€ 수λ₯Ό μ΅œμ†Œκ³΅λ°°μˆ˜λΌκ³  ν•œλ‹€. 예λ₯Ό λ“€μ–΄, 6κ³Ό 15의 κ³΅λ°°μˆ˜λŠ” 30, 60, 90등이 있

www.acmicpc.net

  • 문제

 μžμ—°μˆ˜ a,b κ°€ μ£Όμ–΄μ‘Œμ„ λ•Œ a,b의 μ΅œμ†Œκ³΅λ°°μˆ˜λ₯Ό κ΅¬ν•˜λŠ” ν”„λ‘œκ·Έλž¨

 

  • μ½”λ“œλΆ„μ„

a,b 쀑 더 큰 μˆ«μžλΆ€ν„° a*b μˆ«μžκΉŒμ§€ for문을 μ‹€ν–‰ # 더큰 μˆ«μžλΆ€ν„° μ‹€ν–‰ν•˜λŠ” 이유 λŠ” a,b의 λ°°μˆ˜λ“€ 쀑 곡톡 뢀뢄을 μ°ΎλŠ” 것이기 λ•Œλ¬Έμ— a,b 쀑 μž‘μ€ μˆ˜λΆ€ν„° μ‹œμž‘ν•˜κ²Œ 되면 i ++1이 λ˜λ©΄μ„œ for 문이 ν—›λŒκ²Œ λ˜μ–΄μ„œ

i%a, i%b ==0 λͺ¨λ‘ 값이 λ–¨μ–΄μ§€λŠ” λ‚˜λ¨Έμ§€κ°€ μ—†λŠ” μƒνƒœ -> i λŠ” a,b 의 μ΅œμ†Œκ³΅λ°°μˆ˜

 

 

  • μ½”λ“œ
T = int(input())
for _ in range(T):
    A, B = map(int, input().split())
    result = A*B

    while B>0:
        A,B = B, A%B

    print(result//A)

 

 

 

 

 

 

πŸ’₯ 2476번: μ£Όμ‚¬μœ„κ²Œμž„

 

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

 

2476번: μ£Όμ‚¬μœ„ κ²Œμž„

첫째 μ€„μ—λŠ” μ°Έμ—¬ν•˜λŠ” μ‚¬λžŒ 수 N이 μ£Όμ–΄μ§€κ³  κ·Έ λ‹€μŒ 쀄뢀터 N개의 쀄에 μ‚¬λžŒλ“€μ΄ μ£Όμ‚¬μœ„λ₯Ό λ˜μ§„ 3개의 눈이 λΉˆμΉΈμ„ 사이에 두고 각각 주어진닀. 

www.acmicpc.net

 

 

  • 문제
  1. 같은 눈이 3κ°œκ°€ λ‚˜μ˜€λ©΄ 10,000원+(같은 눈)×1,000μ›μ˜ μƒκΈˆμ„ λ°›κ²Œ λœλ‹€. 
  2. 같은 눈이 2개만 λ‚˜μ˜€λŠ” κ²½μš°μ—λŠ” 1,000원+(같은 눈)×100μ›μ˜ μƒκΈˆμ„ λ°›κ²Œ λœλ‹€. 
  3. λͺ¨λ‘ λ‹€λ₯Έ 눈이 λ‚˜μ˜€λŠ” κ²½μš°μ—λŠ” (κ·Έ 쀑 κ°€μž₯ 큰 눈)×100μ›μ˜ μƒκΈˆμ„ λ°›κ²Œ λœλ‹€.  

예λ₯Ό λ“€μ–΄, 3개의 눈 3, 3, 6이 주어지면 μƒκΈˆμ€ 1,000+3×100으둜 κ³„μ‚°λ˜μ–΄ 1,300원을 λ°›κ²Œ λœλ‹€. 또 3개의 눈이 2, 2, 2둜 주어지면 10,000+2×1,000 으둜 κ³„μ‚°λ˜μ–΄ 12,000원을 λ°›κ²Œ λœλ‹€. 3개의 눈이 6, 2, 5둜 주어지면 κ·Έ 쀑 κ°€μž₯ 큰 값이 6μ΄λ―€λ‘œ 6×100으둜 κ³„μ‚°λ˜μ–΄ 600원을 μƒκΈˆμœΌλ‘œ λ°›κ²Œ λœλ‹€.

N(2 ≤ N ≤ 1,000)λͺ…이 μ£Όμ‚¬μœ„ κ²Œμž„μ— μ°Έμ—¬ν•˜μ˜€μ„ λ•Œ, κ°€μž₯ λ§Žμ€ μƒκΈˆμ„ 받은 μ‚¬λžŒμ˜ μƒκΈˆμ„ 좜λ ₯ν•˜λŠ” ν”„λ‘œκ·Έλž¨μ„ μž‘μ„±ν•˜μ‹œμ˜€

 

 

  • μ½”λ“œλΆ„μ„

첫째 μ€„μ—λŠ” μ°Έμ—¬ν•˜λŠ” μ‚¬λžŒ 수 N이 μ£Όμ–΄μ§€κ³  κ·Έ λ‹€μŒ 쀄뢀터 N개의 쀄에 μ‚¬λžŒλ“€μ΄ μ£Όμ‚¬μœ„λ₯Ό λ˜μ§„ 3개의 눈이 λΉˆμΉΈμ„ 사이에 두고 각각 주어진닀. 

 

 

1. λ°˜λ³΅ν•  횟수 nμž…λ ₯ - forλ¬Έ

2. μ„Έ 수 μž…λ ₯- list 둜 μž…λ ₯

3. if 문으둜 쑰건 μž…λ ₯ν›„ max둜 리슀트 κ°’ 선별후에 κ°’ 좜λ ₯

 

 

  • μ½”λ“œ
case = int(input())
answer = 0

for _ in range(case):
    a, b, c = map(int, input().split())
    
    if a == b == c:
        answer = max(answer, 10000+a*1000)
    elif a == b:
        answer = max(answer, 1000+a*100)
    elif a == c:
        answer = max(answer, 1000+a*100)
    elif b == c:
        answer = max(answer, 1000+b*100)
    else:
        answer = max(answer, 100 * max(a,b,c))

print(answer)

 

 

πŸ’₯ 7567번: 그릇

 

 

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

 

7567번: 그릇

그릇을 λ°”λ‹₯에 λ†“μ•˜μ„ λ•Œ κ·Έ λ†’μ΄λŠ” 10cm 이닀. 그런데 두 개의 그릇을 같은 λ°©ν–₯으둜 포개면 κ·Έ λ†’μ΄λŠ” 5cm만 μ¦κ°€λœλ‹€. 만일 그릇이 μ„œλ‘œ λ°˜λŒ€λ°©ν–₯으둜 μŒ“μ΄λ©΄ λ†’μ΄λŠ” κ·Έλ¦‡λ§ŒνΌ, 즉 10cm λŠ˜μ–΄λ‚œλ‹€.

www.acmicpc.net

 

  • 문제

μ—¬λŸ¬λΆ„μ€ 그릇 λ°©ν–₯이 κ΄„ν˜Έ 문자둜 ν‘œμ‹œλœ λ¬Έμžμ—΄μ„ μ½μ–΄μ„œ κ·Έ μ΅œμ’…μ˜ 높이λ₯Ό μ •μˆ˜λ‘œ 좜λ ₯ν•΄μ•Ό ν•œλ‹€.

 

 

  • μ½”λ“œλΆ„μ„

μ „μ΄λž‘ 같은것과 λΉ„κ΅ν•˜μ—¬ 값을 μ€‘μ²©ν•˜μ—¬ 더함

 

  • μ½”λ“œ
dish = list(str(input()))
answer = 0

for i in range(len(dish)):
    if i == 0:
        answer += 10
    elif dish[i] == dish[i-1]:
        answer += 5
    else:
        answer +=10
        
print(answer)

 

 

πŸ’₯ 2754번: 학점계산

 

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

 

2754번: 학점계산

μ–΄λ–€ μ‚¬λžŒμ˜ Cμ–Έμ–΄ 성적이 μ£Όμ–΄μ‘Œμ„ λ•Œ, 평점은 λͺ‡ 점인지 좜λ ₯ν•˜λŠ” ν”„λ‘œκ·Έλž¨μ„ μž‘μ„±ν•˜μ‹œμ˜€. A+: 4.3, A0: 4.0, A-: 3.7 B+: 3.3, B0: 3.0, B-: 2.7 C+: 2.3, C0: 2.0, C-: 1.7 D+: 1.3, D0: 1.0, D-: 0.7 F: 0.0

www.acmicpc.net

 

 

  • 문제

μ–΄λ–€ μ‚¬λžŒμ˜ Cμ–Έμ–΄ 성적이 μ£Όμ–΄μ‘Œμ„ λ•Œ, 평점은 λͺ‡ 점인지 좜λ ₯ν•˜λŠ” ν”„λ‘œκ·Έλž¨μ„ μž‘μ„±ν•˜μ‹œμ˜€.

A+: 4.3, A0: 4.0, A-: 3.7

B+: 3.3, B0: 3.0, B-: 2.7

C+: 2.3, C0: 2.0, C-: 1.7

D+: 1.3, D0: 1.0, D-: 0.7

F: 0.0

 

 

  • μ½”λ“œ 뢄석

λ…Έκ°€λ‹€λ„€ . . . .

 

  • μ½”λ“œ
d = {"A+": 4.3, "A0": 4.0, "A-": 3.7,  "B+": 3.3,  
     "B0": 3.0, "B-": 2.7, "C+": 2.3, "C0": 2.0, "C-": 1.7, 
     "D+": 1.3, "D0": 1.0, "D-": 0.7, "F": 0.0}
print(d[input()])

 

 

λ…Έκ°€λ‹€ μ•„λ‹Œ μ½”λ“œ! -> 훨씬 κΈΈλ‹€ . . .γ… 

 

grade_plus = input()

if grade_plus == 'F':
    result = 0.0
else:
    grade, plus = list(grade_plus)
    result = 0

    if grade == 'A':
        result += 4.0
    elif grade == 'B':
        result += 3.0
    elif grade == 'C':
        result += 2.0
    elif grade == 'D':
        result += 1.0

    if plus == '+':
        result += 0.3
    elif plus == '-':
        result -= 0.3
    elif plus == '0':
        result += 0.0

print(result)

 

 

 

 

 

πŸ’₯ 2935번: μ†ŒμŒ

 

 

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

 

2935번: μ†ŒμŒ

μˆ˜μ—… μ‹œκ°„μ— λ– λ“œλŠ” 두 학생이 μžˆλ‹€. 두 학생은 μˆ˜μ—…μ— μ§‘μ€‘ν•˜λŠ” λŒ€μ‹ μ— κΈ€λ‘œλ²Œ 경제 μœ„κΈ°μ— λŒ€ν•΄μ„œ ν† λ‘ ν•˜κ³  μžˆμ—ˆλ‹€. 토둠이 점점 κ³Όμ—΄λ˜λ©΄μ„œ 두 학생은 λͺ©μ†Œλ¦¬λ₯Ό λ†’μ˜€κ³ , κ²°κ΅­ μ„ μƒλ‹˜μ€ 크게

www.acmicpc.net

 

 

  • 문제

첫째 쀄에 μ–‘μ˜ μ •μˆ˜ Aκ°€ 주어진닀.

λ‘˜μ§Έ 쀄에 μ—°μ‚°μž + λ˜λŠ” *κ°€ 주어진닀.

μ…‹μ§Έ 쀄에 μ–‘μ˜ μ •μˆ˜ Bκ°€ 주어진닀.

A와 BλŠ” λͺ¨λ‘ 10의 제곱 ν˜•νƒœμ΄κ³ , κΈΈμ΄λŠ” μ΅œλŒ€ 100μžλ¦¬μ΄λ‹€.

 

  • μ½”λ“œ 뢄석

A + C or A * C 좜λ ₯

 

  • μ½”λ“œ
A = int(input())
B = str(input())
C = int(input())

result = 0

if B == '*':
    result = A * C
    print(result)
else: 
    result = A + C
    print(result)

 

 

 

πŸ’₯ 10039번: 평균 점수

 

 

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

 

10039번: 평균 점수

μž…λ ₯은 총 5μ€„λ‘œ 이루어져 있고, μ›μ„­μ΄μ˜ 점수, μ„Έν¬μ˜ 점수, μƒκ·Όμ΄μ˜ 점수, 숭이의 점수, κ°•μˆ˜μ˜ μ μˆ˜κ°€ μˆœμ„œλŒ€λ‘œ 주어진닀. μ μˆ˜λŠ” λͺ¨λ‘ 0점 이상, 100점 μ΄ν•˜μΈ 5의 λ°°μˆ˜μ΄λ‹€. λ”°λΌμ„œ, 평균 점

www.acmicpc.net

  • 문제

기말고사 μ μˆ˜κ°€ 40점 이상인 학생듀은 κ·Έ 점수 κ·ΈλŒ€λ‘œ μžμ‹ μ˜ 성적이 λœλ‹€. ν•˜μ§€λ§Œ, 40점 미만인 학생듀은 λ³΄μΆ©ν•™μŠ΅μ„ λ“£λŠ” 쑰건을 μˆ˜λ½ν•˜λ©΄ 40점을 λ°›κ²Œ λœλ‹€. λ³΄μΆ©ν•™μŠ΅μ€ κ±°λΆ€ν•  수 μ—†κΈ° λ•Œλ¬Έμ—, 40점 미만인 학생듀은 항상 40점을 λ°›κ²Œ λœλ‹€.

학생 5λͺ…μ˜ μ μˆ˜κ°€ μ£Όμ–΄μ‘Œμ„ λ•Œ, 평균 점수λ₯Ό κ΅¬ν•˜λŠ” ν”„λ‘œκ·Έλž¨μ„ μž‘μ„±ν•˜μ‹œμ˜€.

  • μ½”λ“œλΆ„μ„

40점 μ΄ν•˜λŠ” 무쑰건 40점으둜 치고 계산후 평균 좜λ ₯

 

  • μ½”λ“œ

 

result = 0
for _ in range(5):
    point = int(input())
    if point < 40:
        result += 40
    else :
        result += point
answer = int(result/5)
print(answer)

 

 

 

πŸ’₯ 4101번: 크냐?

 

 

  • 문제

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

 

4101번: 크냐?

μž…λ ₯은 μ—¬λŸ¬ 개의 ν…ŒμŠ€νŠΈ μΌ€μ΄μŠ€λ‘œ 이루어져 μžˆλ‹€. 각 ν…ŒμŠ€νŠΈ μΌ€μ΄μŠ€λŠ” ν•œ μ€„λ‘œ 이루어져 있으며, 두 μ •μˆ˜κ°€ 주어진닀. 두 μˆ˜λŠ” λ°±λ§Œλ³΄λ‹€ μž‘κ±°λ‚˜ 같은 μ–‘μ˜ μ •μˆ˜μ΄λ‹€. μž…λ ₯의 λ§ˆμ§€λ§‰ μ€„μ—λŠ” 0이

www.acmicpc.net

 

 

⭐ 0 0 μž…λ ₯μ „κΉŒμ§€ 반볡 // ν˜•νƒœκΈ°μ–΅ν•˜κΈ°!!

 

while 1:
    a,b = map(int,input().split())
    if a==0 and b==0:
        break
    elif a<=b:
        print('No')
    else:
        print('Yes')