코딩테스트
-
백준 4344 파이썬 평균은 넘겠지IT/알고리즘 2022. 2. 22. 01:01
풀이 c = int(input()) e=[] for i in range(c) : b = list(map(int, input().split())) sum = 0 for ii in range(b[0]) : sum += b[ii +1] cnt=0 for ii in range(b[0]) : if b[ii+1] > sum/b[0] : cnt +=1 e.append((cnt/b[0])*100) b.clear() for i in range(c) : print(f'{e[i]:.3f}%') 여러가지로 고민 많이 하고 했는데, 요 분 블로그보고 제일 쉽게 이해했다. https://wook-2124.tistory.com/244 백준 알고리즘 | 4344 : 평균은 넘겠지 (Python / 파이썬) 평균은 넘겠지 출처다국어분..
-
백준 8958 OX퀴즈 파이썬IT/알고리즘 2022. 2. 21. 17:38
풀이 t_count = int(input()) for i in range(t_count) : i = list(input()) score = 0 total = 0 for a in i : if a == 'O' : score += 1 else : score = 0 total += score print(total) 설명 t_count = int(input()) 테스트 케이스의 개수를 지정해주고 for i in range(t_count) : 반복문 사용 범위는, 테스트 케이스의 개수만큼 i = list(input()) list의 형태로 OX를 넣어주기 score = 0 O가 들어오면 +1씩 해줄 score 변수를 0으로 total = 0 O의 값을 모두 더해줄 total 변수도 만들어주고 for a in i : ..
-
백준 1546 평균 파이썬IT/알고리즘 2022. 2. 21. 16:19
풀이 N = int(input()) a = list(map(int, input().split())) max_a = max(a) # print(a) # print(max_a) new = [] for i in range(N) : new.append((a[i]/max_a)*100) print(sum(new)/N) N → 몇 과목 봤는지 넣고 a → 과목당 몇 점인지 리스트형태로 넣고 max_a → 과목중 최대값 넣고 new → 라는 리스트 [] 만들어서 for 문 돌림 for i in range(N) → 범위는 N만큼 new.append((a[i]/max_a)*100) → new라는 리스트에 추가할건데 뭐를? (a[i]/max_a)* → 100 a에 넣은 과목(순서대로)를 최댓값 max_a로 나눈 후, 100..
-
백준 3052 나머지 파이썬IT/알고리즘 2022. 2. 20. 02:16
https://www.acmicpc.net/problem/3052 3052번: 나머지 각 수를 42로 나눈 나머지는 39, 40, 41, 0, 1, 2, 40, 41, 0, 1이다. 서로 다른 값은 6개가 있다. www.acmicpc.net 풀이 A=[] for i in range(10) : A.append(int(input())%42) s = set(A) print(len(s)) set 함수를 써야했다. set 함수의 특징으로는 1. 중복을 제거한다는점 2. 순서가 없다는점 이라고함 참고한 블로그 https://velog.io/@insutance/Python-set-%EC%9D%B4%EB%9E%80 [Python] set() 이란 python 'set( ) 함수' 정리 velog.io
-
백준 2577 숫자의 개수 파이썬IT/알고리즘 2022. 2. 20. 00:18
https://www.acmicpc.net/problem/2577 2577번: 숫자의 개수 첫째 줄에 A, 둘째 줄에 B, 셋째 줄에 C가 주어진다. A, B, C는 모두 100보다 크거나 같고, 1,000보다 작은 자연수이다. www.acmicpc.net 풀이 A = int(input()) B = int(input()) C = int(input()) cnt = 0 D= A*B*C x= [int(i) for i in str(D)] while True : print(x.count(cnt)) cnt += 1 if cnt == 10 : break 뭔가 더 심플하게 할 수 있을거같은데 음 다른 블로그를 찾아보니 곱한 값을 더 쉽게 리스트로 담더라. result = list(str(A*B*C)) 이런 식으로,, ..