본문 바로가기
반응형

분류 전체보기202

[백준] 파이썬 / 문자열 2914 크로아티아알파벳 1427 소트인사이드 📌2914 크로아티아 알파벳 www.acmicpc.net/problem/2941 2941번: 크로아티아 알파벳 예전에는 운영체제에서 크로아티아 알파벳을 입력할 수가 없었다. 따라서, 다음과 같이 크로아티아 알파벳을 변경해서 입력했다. 크로아티아 알파벳 변경 č c= ć c- dž dz= đ d- lj lj nj nj š s= ž z= www.acmicpc.net 처음 딱 든 생각은 일단 알파벳으로 전부 보고 글자수를 센 후에 = - j 이 세가지의 앞의 문자가 케이스에 해당하면 개수 -1 해주는 것! 맙소사.. 똑똑한 파이썬.. -1도 세주네..? 다시다시.. 내풀이2 (오답) import sys input = sys.stdin.readline word = input().strip() cnt = len(.. 2021. 4. 27.
[백준] 파이썬 /문자열 1316 그룹단어체커 📌 1316 그룹단어체커 www.acmicpc.net/problem/1316 1316번: 그룹 단어 체커 그룹 단어란 단어에 존재하는 모든 문자에 대해서, 각 문자가 연속해서 나타나는 경우만을 말한다. 예를 들면, ccazzzzbb는 c, a, z, b가 모두 연속해서 나타나고, kin도 k, i, n이 연속해서 나타나기 때 www.acmicpc.net 그룹단어 의미 한번 나왔던 단어는 다음 차례에 나오지 않아야 함 배열 내 존재 확인에서 in을 안쓰려고 했지만 마땅한 방법이 떠오르지 않아 내 풀이 import sys input = sys.stdin.readline n= int(input()) cnt=0 def isGroup(word): checkList=[] for j in word: if j in c.. 2021. 4. 26.
[백준] 파이썬 / 문자열 1157단어공부 9012 괄호 11721 끊어읽기 📌 1157 단어공부 www.acmicpc.net/problem/1157 1157번: 단어 공부 알파벳 대소문자로 된 단어가 주어지면, 이 단어에서 가장 많이 사용된 알파벳이 무엇인지 알아내는 프로그램을 작성하시오. 단, 대문자와 소문자를 구분하지 않는다. www.acmicpc.net 내풀이 (시간초과) import sys input = sys.stdin.readline word = input().strip().upper() cntDict = {} for i in word: cntDict[i]=word.count(i) it = sorted(list(cntDict.items()),key=lambda x: x[1],reverse=True) if(len(it)==1): print(it[0][1]) elif(i.. 2021. 4. 25.
[백준] 파이썬 / 문자열 1152 단어의 개수 10809 알파벳 개수 📌 1152 단어의 개수 www.acmicpc.net/problem/1152 1152번: 단어의 개수 첫 줄에 영어 대소문자와 띄어쓰기로 이루어진 문자열이 주어진다. 이 문자열의 길이는 1,000,000을 넘지 않는다. 단어는 띄어쓰기 한 개로 구분되며, 공백이 연속해서 나오는 경우는 없다. 또한 www.acmicpc.net 간단하게 생각했다. map으로 띄어쓰기 구분한 list로 받고 그 길이 세기! 내 풀이 import sys input = sys.stdin.readline word = list(map(str, input().split())) print(len(word)) 내 풀이2 n=input() if n[0:1]==" " and n[len(n)-1:len(n)]==" ": print(n.coun.. 2021. 4. 24.
[백준] 문자열/파이썬 2577 숫자의 개수 📌 2577 숫자의 개수 www.acmicpc.net/problem/2577 2577번: 숫자의 개수 첫째 줄에 A, 둘째 줄에 B, 셋째 줄에 C가 주어진다. A, B, C는 모두 100보다 크거나 같고, 1,000보다 작은 자연수이다. www.acmicpc.net 아주 간단한 문젠데 괜히 복잡하게 생각하느라 시간이 좀 걸린 문제! 내풀이1 import sys input = sys.stdin.readline num = [int(input()) for _ in range(3)] ans=num[0]*num[1]*num[2] cntArr = [0]*10 for i in str(ans): cntArr[int(i)]+=1 for i in cntArr: print(i) 세 수를 list에 넣고 곱한다 str으로 .. 2021. 4. 23.
[백준] 정렬/파이썬 11004 K번째 수, 문자열/1110더하기싸이클 📌 11004 K번째 수 www.acmicpc.net/problem/11004 11004번: K번째 수 수 N개 A1, A2, ..., AN이 주어진다. A를 오름차순 정렬했을 때, 앞에서부터 K번째 있는 수를 구하는 프로그램을 작성하시오. www.acmicpc.net 문제보고 읭? 이거 받아서 정렬하고 인덱스로 풀면 되겠는데,,, 햇지만 매우 찜찜해햇다. 시간초과를 걱정하며 넣었는데 일단 통과. 내 풀이 import sys input = sys.stdin.readline; n,k = map(int,input().split()) num = list(map(int,input().split())) num.sort() print(num[k-1]) < 하지만 살짝 처참한 시간 결과... 랭크정렬로 해볼까 했지만.. 2021. 4. 21.
[백준] 정렬 /파이썬 2217 로프, 1764 듣보잡 📌 2217 로프 www.acmicpc.net/problem/2217 2217번: 로프 N(1 ≤ N ≤ 100,000)개의 로프가 있다. 이 로프를 이용하여 이런 저런 물체를 들어올릴 수 있다. 각각의 로프는 그 굵기나 길이가 다르기 때문에 들 수 있는 물체의 중량이 서로 다를 수도 있다. 하 www.acmicpc.net 처음 생각 n 개수를 받은후 돌면서 최대 중량을 list로 받음 제일 작은 최대 중량 * n 개가 로프들의 최대중량이라고 생각 import sys input= sys.stdin.readline n=int(input()) weight = list(int(input()) for _ in range(n)) weight.sort(); print(weight[0]*n) 역시나 오답. 오류: 로.. 2021. 4. 20.
[백준] 정렬 /파이썬 - 2108 통계학 import sys input = sys.stdin.readline from collections import Counter n = int(input()) num_list = [int(input()) for _ in range(n)] ans=[] a=[] q = [0]*8001 for i in num_list: q[i+4000]+=1 qmax = max(q) for i in range(8001): if q[i] == qmax: a.append(i-4000) a.sort() ans.append(round(sum(num_list)/n)) ans.append(sorted(num_list)[n//2]) if len(a)==1: ans.append(a[0]) else: ans.append(a[1]) ans.app.. 2021. 4. 20.
[백준] 정렬 /파이썬 - 10814 10815 1026 📌 10814 나이순 정렬 10814번: 나이순 정렬 온라인 저지에 가입한 사람들의 나이와 이름이 가입한 순서대로 주어진다. 이때, 회원들을 나이가 증가하는 순으로, 나이가 같으면 먼저 가입한 사람이 앞에 오는 순서로 정렬하는 프로그램을 www.acmicpc.net 두번째 기준이 가입한 순서인데 원래 가입한 순서로 정렬되어 있기 때문에 한 개의 조건으로만 정렬했다. 내풀이 import sys input = sys.stdin.readline n = int(input()) members = [list(map(str,input().split())) for _ in range(n)] members.sort(key=lambda x: (int(x[0]))) for i in members: print(*i) 근데 생.. 2021. 4. 19.
반응형