화성 수학
--------
a = int(input())
for i in range(a):
b = input().split()
result = float(b[0]) //input b 첫 번째 요소는 실수로 저장
for j in b[1:]: // input b에 첫 번째를 제외한 문자를 j에 받아옴
if j == '@':
result *= 3
elif j == '%':
result += 5
elif j == '#':
result -= 7
print(f"{result:.2f}")
수들의 합
--------
a = int(input())
sum = 0
b = 1
n = 0
while sum + b <= a: //다음 자연수 b를 더해도 a를 넘지 않는 경우에만 아래를 수행하기 위함
sum += b
b += 1
n += 1 //b의 증가한 만큼 수를 세줌(b를 출력하면 마지막 값이 출력 되어 +1 증가해서 나오기 때문)
print(n)
--------
"sum + b <= a"
예시로 이해하기
예를 들어, a = 15이고, 현재 sum = 10, b = 5라면:
sum + b는 10 + 5 = 15가 되며, a와 같으므로 sum에 b를 더할 수 있습니다.
만약 b = 6이었다면 sum + b = 16이 되어 a를 넘기 때문에 더할 수 없습니다.
소인수분해
---------
n = int(input())
factor = 2
while n > 1: # 1. 9991 받고 1 보다 작을 때까지 반복
if n % factor == 0: # 2. factor 값으로 나눠지는지 확인
print(factor) # 3-1. 나눠지게 되면 factor 값 출력 -> 97
# 이후 103 % 97(factor)가 되어 factor가 103이 되면 print가 됌
n //= factor # 4. n(9991)을 factor(97)로 나눠 n 값을 103으로 변경,
else:
factor += 1 # 3. 안나눠지면 계속 +1
두 번째로 큰 값
--------------
numbers = list(map(int, input().split())) //list 형태로 값을 받아와서 split
print(sorted(numbers)[-2]) // sort해서 -2 = 2번째로 큰 값을 출력
ex)
1. 60 40 20 -> [20, 40, 60]
2. -1 = 60, -2 = 40, -3 = 20, 0 = 20, 1 = 40, 2 = 60
소음
----
a = int(input())
op = input()
b = int(input())
if op == '*':
print(a * b)
elif op == '+':
print(a + b)
문자열 반복
----------
a = int(input())
for i in range(a):
num, string = input().split()
num = int(num)
result = []
for char in string: //string() X, string -> string 입력값을 char에 받아옴
//문자열을 입력 받은 num 횟수만큼 반복 시키기 위해 for문 사용
result.append(char * num)
print("".join(result))
윤년 // 4로 떨어지면 윤년, 100으로 떨어지면 평년, 400으로 떨어지면 윤년
--------
year = int(input())
leap_year = False
if year % 4 == 0:
if year % 100 == 0:
if year % 400 == 0:
leap_year = True // 4, 100, 400으로 나눠서 0이면 윤년
else:
leap_year = True // 4로 나누면 0, 100으로 나누면 == 0이 아닐시 윤년
if leap_year:
print("1")
else:
print("0")
5명의 값을 받고 평균, 40점 이하는 40점으로 변경
----------------------------------------------
scores = [int(input()) for _ in range(5)]
// _ 는 i 필요 없을 시 사용 => 반복 횟수 표현 필요 없으면 _ 사용
min_scores = [max(score, 40) for score in scores]
//socres값을 score에 받아와 40이랑 비교해서 높은 값을 min_scores에 저장
average_score = sum(min_scores)
print(average_score)
최소 공배수 구하기
-----------------
import math //math 모듈 가져옴
a = int(input())
for i in range(a):
b, c = map(int, input().split())
lcm = math.lcm(b,c)
//math.lcm => 값을 입력 받아 최고공배수를 출력해줌
print(lcm)
주사위 3개
---------
a,b,c = map(int, input().split())
if a == b == c:
print(int(10000 + a * 1000))
elif a == b:
print(int(1000 + a * 100))
elif b == c:
print(int(1000 + b * 100))
elif c == a:
print(int(1000 + c * 100))
else:
print(max(a,b,c) * 100)
사각형을 그리는 4번째 점 찾기
----------------------------
a,b = map(int, input().split())
c,d = map(int, input().split())
e,f = map(int, input().split())
x = [a,c,e]
y = [b,d,f]
x_1 = min(x, key=x.count)
//리스트 x 값에서 key=x.count로 횟수 확인 후 제일 작은 count 값 출력
y_1 = min(y, key=y.count)
print(x_1, y_1)
최고 값 찾기 //2476번
---------------
a = int(input())
max_sum = 0
for i in range(a):
b,c,d = map(int, input().split())
if b == c == d:
sum = 10000 + (b * 1000)
elif b == c or c == d or d == b:
list = [b,c,d]
min_list = max(list, key=list.count)
sum = 1000 + (min_list * 100)
else:
sum = max(b,c,d) * 100
max_sum = max(max_sum, sum) //max_sum과 sum 값을 비교해가며 최고 값 찾기
print(max_sum)
학점 입력받아 출력
----------------
score = {
'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(score[input()])
알람 45분 전으로 맞추기
----------------------
H,M = map(int, input().split())
if M >= 45:
M -= 45
else:
M = 60 - (45 - M)
if H == 0:
H = 23
else:
H -= 1
print(H,M)
그릇 모양
-----------
a = input()
sum = 10
for i in range(1, len(a)):
if a[i] == a[i - 1]: //이전 그릇과 같은 방향
sum += 5
else:
sum += 10 //이전 그릇과 다른 방향
print(sum)
개표
---------
n = int(input())
s = input().strip()
count_A = s.count('A')
count_B = s.count('B')
if count_A > count_B:
print('A')
elif count_B > count_A:
print('B')
else:
print("Tie")