Koala - 8기

17219번: 비밀번호 찾기 (acmicpc.net) 17219번: 비밀번호 찾기 첫째 줄에 저장된 사이트 주소의 수 N(1 ≤ N ≤ 100,000)과 비밀번호를 찾으려는 사이트 주소의 수 M(1 ≤ M ≤ 100,000)이 주어진다. 두번째 줄부터 N개의 줄에 걸쳐 각 줄에 사이트 주소와 비밀번 www.acmicpc.net 문제 분석 문제 2019 HEPC - MAVEN League의 "비밀번호 만들기"와 같은 방식으로 비밀번호를 만든 경민이는 한 가지 문제점을 발견하였다. 비밀번호가 랜덤으로 만들어져서 기억을 못 한다는 것이었다! 그래서 경민이는 메모장에 사이트의 주소와 비밀번호를 저장해두기로 했다. 하지만 컴맹인 경민이는 메모장에서 찾기 기능을 활용하지 못하고 직접 눈으로 사이트의 주소와 비밀번호..
19698번: 헛간 청약 (acmicpc.net) 19698번: 헛간 청약 $1 \le N, W, H, L \le 1,000$ www.acmicpc.net 문제 분석 1. 소 한마리당 L*L크기의 공간을 차지하기 때문에 헛간에 들어갈 수 있는 최대 개수는 각 W와 H를 L로 나누어 나온 수 두개를 곱하여 구한다 2. 만약 1번에서 구한 두 수를 곱한 수가 총 N마리보다 크다면 N이 정답 -> 추가설명) 두 수를 곱한 수가 10이면 10마리의 소가 들어갈 수 있는 것인데, N이 7마리라면 총 10마리가 들어갈 수 있어도 결과적으로는 7마리만 들어가게 되는 것이므로 N마리만 입주할 수 있게 된다 반대로 만약 곱한 수가 N보다 작다면 곱한 수가 정답이 된다. ->추가설명 ) 두 수를 곱한 수가 10이면 10마..
문제 승현이는 방학을 맞아 심심하지만, 공부는 하기 싫습니다. 이렇게 방 안에서 하루하루 시간을 낭비하던 중, 승현이는 자신의 직육면체 모양의 지우개에 개미 한 마리가 붙어 있다는 것을 알게 됩니다. 사실 이 개미는 우리가 문제를 어떻게 낼 지 잘 몰라서 방에 넣은 로봇입니다. 이 개미 로봇은 말도 안 되지만 어떠한 시련이 닥쳐도 서로 반대편에 위치한 점 A에서 점 B까지 최단 거리로 이동하며 그 경로를 지우개에 그립니다. 누군가 자신의 지우개에 흔적을 남기는 것을 너무나 싫어하는 승현이는 개미 로봇이 자신의 지우개에 남긴 흔적의 양, 즉 로봇이 이동한 거리를 구하여 우리에게 손해 배상 청구를 하려고 합니다. 개미 로봇은 부피가 존재하지만, 승현이는 정확한 양을 측정하기 귀찮기 때문에 그냥 부피가 없다고..
풀이 방법 일단 9명의 키를 입력한다.(풀이 방법이 2가지 있지만 조합을 사용하는 방법이 아닌 방법으로 풀어보면) 일단 9명의 키를 리스트에 저장후 sum값에 리스트에 들어있는 모든 수를 더한다. 그리고 1번째요소 부터 9번째까지 2번째요소부터 9번째까지 .. 이렇게 해 보면 2개를 뺐을때 정확히 100이 되게 하는 2개의 숫자를 고를 수있다. 그리고 이 둘을 리스트에서 제거하고 정렬한 다음 하나씩 출력하면 된다. 그리고 조합을 이용하는 방식으로 풀어보면 9개중 7개를 뽑는 조합에서 그합이 100이 되는 조합을 고르면 된다. 그리고 그걸 list로 만들고 정렬하고 출력하면 된다
https://www.acmicpc.net/problem/15905 15905번: 스텔라(STELLA)가 치킨을 선물했어요 경인지역 6개대학 연합 프로그래밍 경시대회 shake! 는 아주대학교, 경희대학교, 성균관대학교, 인하대학교, 한국항공대학교, 한양대학교ERICA가 함께하는 대학교 자체 연합 대회이다. shake! 는 매 www.acmicpc.net 2차원 배열을 만들고 맞춘 문제 순으로 정렬한다. 참가자가 5명일 경우 모두다 수상하므로 조건문으로 나눈다. 5명을 초과할 경우 5등 학생과 맞춘 문제가 같기만 하면 아깝게 수상하지 못한 학생이다. 반복문을 통해 맞춘 문제가 같은 학생들만 카운트 해주면 해결할 수 있을 것이다.
문제 https://www.acmicpc.net/problem/11279 11279번: 최대 힙 첫째 줄에 연산의 개수 N(1 ≤ N ≤ 100,000)이 주어진다. 다음 N개의 줄에는 연산에 대한 정보를 나타내는 정수 x가 주어진다. 만약 x가 자연수라면 배열에 x라는 값을 넣는(추가하는) 연산이고, x가 www.acmicpc.net 코드 풀이 입력받은 x가 0이 아니면 배열에 x를 추가하고, x가 0이면 배열에서 가장 큰 값을 출력하고 그 값을 배열에서 제거한다. heappush를 이용해 가장 큰 입력값이 0으로 오게 배열에 x를 추가하고, x가 0이 되면 가장 큰 요소를 반환한다. 처음에 문제 제목을 최대 합으로 보고 힙 모듈을 모른 상태에서 계속 시간 초과가 나는 이런 코드를 쓰고 있다가 heap..
https://www.acmicpc.net/problem/1935 1935번: 후위 표기식2 첫째 줄에 피연산자의 개수(1 ≤ N ≤ 26) 가 주어진다. 그리고 둘째 줄에는 후위 표기식이 주어진다. (여기서 피연산자는 A~Z의 영대문자이며, A부터 순서대로 N개의 영대문자만이 사용되며, 길이 www.acmicpc.net 1. 문제 후위 표기식과 각 피연산자에 대응하는 값들이 주어져 있을 때, 그 식을 계산하는 프로그램을 작성하시오. 2. 입력 첫째 줄에 피연산자의 개수(1 ≤ N ≤ 26) 가 주어진다. 그리고 둘째 줄에는 후위 표기식이 주어진다. (여기서 피연산자는 A~Z의 영대문자이며, A부터 순서대로 N개의 영대문자만이 사용되며, 길이는 100을 넘지 않는다) 그리고 셋째 줄부터 N+2번째 줄까지..
https://www.acmicpc.net/problem/11179 11179번: 2진수 뒤집기 희연이는 스웨덴으로 이사하여 현재 학교를 다니고 있다. 1학년 교육과정은 중국에서 배웠고, 스웨덴과 중국 두 나라의 교육과정은 완전히 다르다. 희연이는 수학을 좋아한다. 하지만 지금은. www.acmicpc.net 풀이 우선 입력받은 값을 인덱싱을 활용해서 뒤집는다. 이때 그냥 bin() 함수를 쓰면 앞에 '0b'가 붙은 상태로 2진수로 변환된다. 따라서 뒤집은 값을 그대로 다시 10진수로 변환하기 전에 맨 뒤에 있을 'b0'을 제외하고 출력해야 한다. 리스트 인덱싱을 복습할 수 있는 문제였다. 코드 input = __import__('sys').stdin.readline n = int(input()) bin..
문제 https://www.acmicpc.net/problem/12847 12847번: 꿀 아르바이트 월세를 내기 바로 전 날 까지 인 n (1 ≤ n ≤ 100,000) 일과 일을 할 수 있는 날 m (0 ≤ m ≤ n) 일이 주어진다. 그 다음 줄 에는 1일부터 n일 까지 일급 Ti가 순서대로 주어진다. (0 < Ti ≤ 1,000,000) www.acmicpc.net 코드 풀이 일급 t를 arr에 넣은 다음 arr의 누적합 psum의 index가 m+1만큼의 차이를 가질 때의 psum 값의 차이를 result에 저장하고 최댓값을 출력한다.
https://www.acmicpc.net/problem/17245 17245번: 서버실 서버실에는 모두 85대의 컴퓨터가 있고, 3분이 지나면 전체의 58%인 50대의 컴퓨터가 정상 작동된다. www.acmicpc.net 🖇 이진 탐색 코드 # 17245 # 시간초과 나는 걸로 봐선, 단순 반복문으로 풀면 안된다. # 그럼 이진 탐색으로? L==1, R==10,000,000 을 초기값으로 탐색하는 것? input = __import__('sys').stdin.readline n = int(input()) li = [] for i in range(n): li.append(list(map(int,input().split()))) sm = 0 mx = 0 for i in range(n): for j in r..
문제 링크 https://www.acmicpc.net/problem/1270 1270번: 전쟁 - 땅따먹기 첫째 줄에는 땅의 개수 n(n t / 2: # 전쟁 끝 print(max_key) else: print('SYJKGW')
https://www.acmicpc.net/problem/3181 3181번: 줄임말 만들기 꿍은 만사가 귀찮아서 말을 하기도 귀찮아 한다. 그래서 하려는 말을 대신해줄 줄임말을 만들려고 하는데 나름 규칙을 만들었다. 하려는 말은 최소 하나 이상의 단어를 포함하는데 각 단어들은 www.acmicpc.net 풀이 과정 우선 금지된 단어(ban_list)에 줄임말로 들어가면 안되는 단어들을 리스트에 넣어준다. 그 후 for문과 if문, in/not in 개념을 이용해 각 단어가 맨 앞자리 문자 (첫번째 단어)가 아니거나, 금지된 단어 목록에 있으면 continue를 해주어 무시하고 반복문을 그대로 순회하도록 구현해보았다. 답 str_list = list(input().split()) ban_list = ['..
KauKoala
'Koala - 8기' 카테고리의 글 목록