본문 바로가기

Python25

11659 처음으로 시간 초과가 난 문제제한 시간과 최대 건수 계산을 기반으로 로직 짜기 ## 🔒 문제 003. 구간 합 구하기 #11659## ❗시간 초과n, m = map(int, input().split())numlist = list(map(int, input().split()))tot = 0for i in range (1, m+1): i, j = map(int, input().split()) tot = sum(numlist[i-1:j]) print(tot)''' 모범답안## 최대 건수가 10만건이고 시간 제한이 0.5초 이므로, 구간 마다 합을 매번 계산하면 끝낼 수 없음## 수를 입력받음과 동시에 합 배열 생성import sysinput = sys.stdin.readline ## 반복문으로 입력 .. 2024. 6. 28. 16:22
11720 ## 🔒 문제 001. 숫자의 합 구하기 #11720n = int(input())nums = input()num_list = [0 for i in range(1, n+1)]for i in range (1, n+1): num_list[i-1] = nums[i-1]num_list_new = [int(i) for i in num_list]t = sum(num_list_new)print(t)''' 모범 답안n = input()numbers = list(input())sum = 0for i in numbers: sum = sum + int(i)print(sum)''' 2024. 6. 27. 16:56
심화 연습 - 1157 ## 1157 단어 공부word = input()word = word.lower() ## 대소문자 구분 X를 위한 처리word_len = len(word)alphabet_list = [chr(i) for i in range(ord('a'),ord('z')+1)]alphabet_cnt = [0 for i in range (1, 27)]alphabet_set = dict(zip(alphabet_list,alphabet_cnt))for i in range (0, word_len): if word[i] in alphabet_set: alphabet_set[word[i]] = alphabet_set[word[i]] + 1max_alphabet = [k for k, v in alphabet_set.item.. 2024. 6. 26. 22:07
1546 ## 🔒 문제 002. 평균 구하기 #1546n = int(input())score_lst = list(input().split())score_lst = [int(i) for i in score_lst]score_max = int(max(score_lst))score_lst_new = []for i in range (1, n+1): score_lst_new.append(score_lst[i-1] / score_max * 100) avg = sum(score_lst_new) / len(score_lst_new)print(avg)''' 모범 답안n = input()mylist = list(map(int, input().split()))mymax = max(mylist)sum = sum(mylist)pr.. 2024. 6. 25. 16:48
배열 연습 - 5597 ## 5597 과제num_lst = [i+1 for i in range(30)]for i in range (1, 29): num_i = int(input()) num_lst.remove(num_i)print(min(num_lst))print(max(num_lst)) 2024. 6. 25. 14:47
배열 연습 - 10813 ## 10813 공 바꾸기n, m = input().split()n = int(n) # 바구니 최대 갯수m = int(m) # 교환 횟수lst = [i+1 for i in range(n)] # 바구니 공 번호 리스트lst_swtch = list() # 바꿀 대상 저장 리스트for m in range (1, m+1): ## 교환 행위 m번 반복 i, j = input().split() i = int(i) j = int(j) lst_swtch.append(lst[i-1]) lst_swtch.append(lst[j-1]) lst[j-1] = lst_swtch[0] ## j번째 바구니는 i번째 바구니 값으로 변경 lst[i-1] = lst_swtch[1] ## i번째 바구니는 j번째 바구니 값으.. 2024. 6. 24. 09:26
배열 연습 - 10810 ## 10810 공 넣기n, m = input().split()n = int(n) # 최종 출력할 바구니 최대 번호m = int(m) # 반복 횟수lst = [0 for i in range(n)] # 최종 출력할 바구니까지의 공 저장 리스트...0으로 초기화for x in range(1, m+1): i_x, j_x, k_x = input().split() i_x = int(i_x) j_x = int(j_x) k_x = int(k_x) #lst[i_x-1:j_x+1] = [k_x] ## 이렇게 하니까 원소값 1개만 들어감.. 반복문으로 처리해야함 for y in range (i_x-1, j_x): lst[y] = k_xprint(*lst) 2024. 6. 23. 22:37
배열 연습 - 10871 ## 10871 x보다 작은 수n, x = input().split()n = int(n)x = int(x)a = input().split()a = map(int, a)lst = []for i in a: if i 2024. 6. 23. 17:53
배열 연습 - 10807 숫자 갯수를 제한해서 받는 문법은 검색했을 때 없는 걸로 나오는데..정확한 답인지 모르겠다 ## 10807 개수 세기n = input()lst = input().split()num = input()cnt = 0for i in lst: if num == i: cnt = cnt + 1print(cnt) 2024. 6. 23. 17:42