백준 파이썬
-
백준 1157 단어 공부 파이썬IT/알고리즘 2022. 2. 28. 22:49
풀이 word = input().upper() word_list = list(set(word)) cnt = [] for i in word_list: cnt.append(word.count(i)) max_cnt = max(cnt) index_max_cnt = cnt.index(max_cnt) if cnt.count(max_cnt) > 1: print('?') else: print(word_list[index_max_cnt]) 예제와 같이 Mississipi 를 입력했을 때로 풀이해보자. word = input().upper() 입력 시 Mississipi 는 MISSISSIPI 모두 대문자로 입력된다. word_list = list(set(word)) word_list 에는 set 함수로 중복값을 제거해준..
-
백준 2675 문자열 반복 파이썬IT/알고리즘 2022. 2. 27. 02:03
풀이 T = int(input()) for i in range(T) : R, S = input().split() for j in S : X = j*int(R) print(X, end='') print() 풀던 것에서 계속 틀려서 무얼까 하고 봤는데, 맨 아래 print() 를 해줌으로써 터미널에 한 줄 띄어 쓰기가 가능하게 했다는 것이 신기했다. 문자열도 for에 범위에 쓰일 수 있구나.. 도 배움 for i in range(T) : R, S = input().split() for j in S : print(type(j), j) 요롷게 테스트로 R = 3 과 S = ABC 라는 값을 입력 후 type을 살펴보았더니 당연하게도 문자열이었다는 점 끝
-
백준 11720 숫자의 합 파이썬IT/알고리즘 2022. 2. 24. 22:52
풀이 n =input() n2 = input() a =[] for i in n2 : i = int(i) a.append(i) print(sum(a)) 사실 정답은 맞췄으나 맘에 안드는 부분은 n과 n2가 전혀 관계없이 적혔다는점. 위의 풀이로 맞추었으나, 추가적으로 고민 중 .. 다시 풀었다 ! n =int(input()) n2 = input() a =[] for i in range(n) : i = int(n2[i]) a.append(i) print(sum(a)) 이렇게 하면 n과 n2 모두 사용해서 풀 수 있었다.
-
백준 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