https://www.acmicpc.net/problem/2562
import sys
nums = []
for i in range(9):
a = int(sys.stdin.readline())
nums.append(a)
print(max(nums))
print(nums.index(max(nums)) + 1)
> 리스트명.index(a) : 리스트 내에서 a가 갖는 인덱스 값을 알려줌
> a = int(sys.stdin.readline()) \n nums.append(a) 대신 nums.append(int(sys.stdin.readline())) 으로도 할 수 있다!!!
https://www.acmicpc.net/problem/2577
import sys
A = int(sys.stdin.readline())
B = int(sys.stdin.readline())
C = int(sys.stdin.readline())
mul = list(str(A * B * C))
for i in range(10):
print(mul.count(str(i)))
> 리스트, 튜플, 딕셔너리 등 반복가능한 것.count('a')는 a가 몇 개 있는지 세 줌
https://www.acmicpc.net/problem/3052
import sys
nums = []
remainder = []
for i in range(10):
nums.append(int(sys.stdin.readline()))
if nums[i] % 42 not in remainder :
remainder.append(nums[i] % 42)
print(len(remainder))
>import sys 꼭 포함해서 제출하자... 런타임에러 멈춰..
https://www.acmicpc.net/problem/8958
import sys
cases = int(sys.stdin.readline())
for a in range(cases):
test = str(sys.stdin.readline().strip())
score = 0
sum_score = 0
for b in range(len(test)):
if test[b] == 'O':
score += 1
sum_score += score
else :
score = 0
print(sum_score)
> for문을 세 개 만들어서 점수를 구하는.. 매우 복잡하고 이상한 방식으로 식을 세우고 있었는데, 몇 시간을 고민해도 "OOOOOOOOOO"의 점수가 55가 나오지 않길래 구글링했다. 결론은 매우.. 간단하더라.... ㅠㅠ
> case 수만큼 반복(첫번째 for문)하는데, 이 때 score와 sum_score는 0이어야 한다. 각각의 case는 다른 점수를 출력해야 하기 때문.
각 케이스에서 입력받은 값의 길이만큼 반복(두번째 for문)하며 점수를 구한다. 인덱스값 0부터 len(test)-1까지 O라면 score 1점 추가, sum_score에 score를 합산하며 구한다.
(첫번째 값이 O이면 score=1, sum_score=1. 두번째 값도 O이면 score=2, sum_score = 3. 여기서 만약 세번째 값도 O이라면 score=3, sum_score=6이 되고, 세번째 값이 X라면 score=0, sum_score=3이 되는 것이다.)
그리고 두번째 for문이 끝난 시점에서 sum_score 값을 출력하면 각 테스트 케이스의 점수를 알 수 있다.
https://www.acmicpc.net/problem/4344
import sys
C = int(sys.stdin.readline())
for i in range(C):
students = list(map(int, sys.stdin.readline(). split()))
N = students[0]
scores = students[1:]
mean = sum(scores) / N
temp = 0
for x in range(N):
if scores[x] > mean:
temp += 1
perc = (temp/N) * 100
print(f"{perc:.3f}%")
> 뭔가.. 더 효율적으로 코드를 짤 수 있을 것 같은데, 잘 모르겠다. 일단 지금은 이게 제일 보기 좋고 깔끔한 것 같다.
> round(perc, 3)으로 했을 땐 틀렸는데 perc:.3f로 하니 맞았다. round로 하면 40.0%로 출력되지만 :.3f로 하니 40.000%로 출력되기 때문인 것 같다.
https://www.acmicpc.net/problem/10818
import sys
N = int(sys.stdin.readline())
ints = list(map(int, sys.stdin.readline().split()))
print(min(ints), max(ints))
남는 게 시간이라지만 활용하는 게 쉽지 않다.
아직 화요일밖에 안 되었으니 수목금 화이팅!
+) 드디어 실버5 ㅠㅠㅠ
아주 귀여운게 마치 내 TFT 랭크같다..ㅎ
ㅋㅋㅋㅋㅋㅋ 골드까지 파이탱~!!
'STUDY' 카테고리의 다른 글
파이썬 스터디 2주차(머신러닝) (0) | 2022.01.24 |
---|---|
파이썬 스터디 2주차(캐글) (0) | 2022.01.13 |
파이썬 스터디 1주차(머신러닝) (3) | 2022.01.11 |
파이썬 스터디 1주차(백준, 캐글) (4) | 2022.01.07 |
코드잇 대학생 코딩캠프 - 업무자동화 for Windows(1) (0) | 2021.09.07 |