본문 바로가기

python-algorithm1422

백준 23278 영화 평가 https://www.acmicpc.net/problem/23278 23278번: 영화 평가 스타트링크에는 영화 감상 동아리가 있다. 영화 동아리에는 총 N명의 구성원이 있고, 매주 모여서 영화 한 편을 본다. 영화를 본 뒤, 각 사람은 0보다 크거나 같고, 100보다 작거나 같은 정수로 영 www.acmicpc.net 1 2 3 4 n,l,h=map(int, input().split()) scores=sorted(list(map(int, input().split()))) ans=sum(scores[l:n-h])/(n-l-h) print(ans) Colored by Color Scripter cs 점수들이 최대 100이하고 숫자들 개수가 엄청 많았다면 계수정렬을 썼겠지만 그렇지 않으므로 내부함수를 사용해.. 2022. 10. 17.
백준 25496 장신구 명장 임스 https://www.acmicpc.net/problem/25496 25496번: 장신구 명장 임스 첫 번째 줄에 정수 $P$와 정수 $N$이 공백으로 구분되어 주어진다. ($1 \le P \le 200$, $1 \le N \le 1\,000$) 두 번째 줄에는 정수 $A_1, A_2, \dots, A_N$이 공백으로 구분되어 주어진다. ($1 \le A_i \le 200$) www.acmicpc.net 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 def sol(p,n,nums): nums.sort() answer = 0 for i in range(n): if p 2022. 10. 17.
백준 1251 단어 나누기 https://www.acmicpc.net/problem/1251 1251번: 단어 나누기 알파벳 소문자로 이루어진 단어를 가지고 아래와 같은 과정을 해 보려고 한다. 먼저 단어에서 임의의 두 부분을 골라서 단어를 쪼갠다. 즉, 주어진 단어를 세 개의 더 작은 단어로 나누는 것이다 www.acmicpc.net 1 2 3 4 5 6 7 8 9 10 11 def sol(s): len_s = len(s) strings = [] for i in range(1, len_s - 1): for j in range(1, len_s - 1): if i + j 2022. 10. 17.
백준 17335 APC는 왜 서브태스크 대회가 되었을까? https://www.acmicpc.net/problem/17224 17224번: APC는 왜 서브태스크 대회가 되었을까? 2019년 올해도 어김없이 아주대학교 프로그래밍 경시대회(Ajou Programming Contest, APC)가 열렸다! 올해 새롭게 APC의 총감독을 맡게 된 준표는 대회 출제 과정 중 큰 고민에 빠졌다. APC에 참가하는 참가 www.acmicpc.net 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 def sol(l,k,score,problems,is_hard): if is_hard==1: plus_score=140 location=1 else: plus_score=100 location=0 problem.. 2022. 10. 14.
백준 16466 콘서트 https://www.acmicpc.net/problem/16466 16466번: 콘서트 HCPC (Hanyang Completely Perfect Celebrity)는 한양대학교 최고의 가수에게 주어지는 칭호이다. 한양대학교는 매년 최고의 HCPC를 선발한다. HCPC가 되기란 여간 어려운 게 아니다. 매일 아침 날달걀을 까먹 www.acmicpc.net 1 2 3 4 5 6 7 8 9 10 11 import sys n=int(sys.stdin.readline()) nums=sorted(list(map(int, sys.stdin.readline().split()))) is_full=1 for i in range(len(nums)): if (i+1)!=nums[i]: print(i+1) is_full=0.. 2022. 10. 13.
백준 2204 도비의 난독증 테스트 https://www.acmicpc.net/problem/2204 2204번: 도비의 난독증 테스트 꿍은 도비에게 영어단어들을 제시한 후 어떤 단어가 대소문자를 구분하지 않고 사전순으로 가장 앞서는지 맞추면 양말을 주어 자유를 얻게해준다고 하였다. 하지만 인성이 좋지 않은 꿍은 사실 www.acmicpc.net 1 2 3 4 5 6 7 8 while 1: n=int(input()) if n==0: break words=[input() for i in range(n)] words_lowered=[words[i].lower() for i in range(len(words))] min_word_index=words_lowered.index(min(words_lowered)) print(words[min_wor.. 2022. 10. 12.
백준 10989 수 정렬하기 3 https://www.acmicpc.net/problem/10989 10989번: 수 정렬하기 3 첫째 줄에 수의 개수 N(1 ≤ N ≤ 10,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 수가 주어진다. 이 수는 10,000보다 작거나 같은 자연수이다. www.acmicpc.net 1 2 3 4 5 6 7 8 9 import sys n=int(sys.stdin.readline()) ans=[0]*10001 for i in range(n): ans[int(sys.stdin.readline())]+=1 for i in range(10001): if ans[i]!=0: for j in range(ans[i]): print(i) cs 문제 자체는.. 어렵지가 않은데 이 문제에서 내장함수 sort()를.. 2022. 10. 11.
백준 25629 홀짝 수열 https://www.acmicpc.net/problem/25629 25629번: 홀짝 수열 길이가 $N$인 수열의 $i(1 \le i \le N)$번째 원소를 정수 $a_i(1\le a_i \le 100)$라고 하자. 동훈이는 이 수열을 잘 정렬해서 홀짝 수열로 만들고 싶다. 어떤 수열이 홀짝 수열이 되려면 다음 조건을 만족해 www.acmicpc.net 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 def sol(n,nums): odds = 0 evens = 0 for i in nums: if i % 2 == 0: evens += 1 else: odds += 1 if n%2==1: if odds==n//2+1 and evens==n//2: .. 2022. 10. 10.
백준 5217 쌍의 합 https://www.acmicpc.net/problem/5217 5217번: 쌍의 합 1보다 크거나 같고 12보다 작거나 같은 자연수 n이 주어졌을 때, 합이 n이 되는 두 자연수의 쌍을 찾는 프로그램을 작성하시오. 예를 들어, 5가 주어진 경우 가능한 쌍은 1,4와 2,3이 있다. 두 수는 www.acmicpc.net 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 n=int(input()) for i in range(n): num=int(input()) nums=[] for j in range(1,num): if j >= num-j : break else: nums.append([j,num-j]) if len(nums)==0: print("Pairs for %d.. 2022. 10. 9.
백준 25377 빵 https://www.acmicpc.net/problem/25377 25377번: 빵 KOI 빵은 프로그래밍을 공부하는 학생들에게 인기를 끌고 있다. 이 빵은 맛있을 뿐 아니라, 안에 프로그래밍에 큰 도움이 되는 여러 가지 힌트가 담겨 있어서 매우 인기가 높다. 이렇게 인기가 높 www.acmicpc.net 1 2 3 4 5 6 7 8 9 10 11 import sys n=int(input()) nums=[] for i in range(n): a,b=map(int, sys.stdin.readline().split()) if a 2022. 10. 8.
백준 25628 햄버거 만들기 https://www.acmicpc.net/problem/25628 25628번: 햄버거 만들기 햄버거 가게에서 일하는 종현이는 햄버거를 만드는 일을 하고 있다. 가게에는 햄버거 빵이 $A$개, 햄버거 패티가 $B$개 있는데, 이 빵과 패티를 가지고 최대한 햄버거를 많이 만드려고 한다. 햄버 www.acmicpc.net 1 2 3 4 5 6 def sol(a,b): answer=min(a//2,b) return answer a,b=map(int, input().split()) print(sol(a,b)) cs 단순 계산문제죠, 빵 2개당 패티 1로 햄버거를 만들수있으니 빵을 2로 나눈 몫, 패티 개수중에 작은걸 출력하시면됩니다. In this problem, Inputs are integers 2 Bre.. 2022. 10. 7.
백준 6321 IBM 빼기 1 https://www.acmicpc.net/problem/6321 6321번: IBM 빼기 1 첫째 줄에 컴퓨터의 개수 n이 주어진다. 다음 줄부터 n개의 줄에는 컴퓨터의 이름이 주어진다. 컴퓨터의 이름은 최대 50글자이며, 알파벳 대문자로만 이루어져 있다. www.acmicpc.net 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 def sol(s): ans = '' for i in s: if (ord(i) + 1) 2022. 10. 6.