목록Algorithm (113)
gambae programing
https://www.acmicpc.net/problem/17615 17615번: 볼 모으기 첫 번째 줄에는 볼의 총 개수 N이 주어진다. (1 ≤ N ≤ 500,000) 다음 줄에는 볼의 색깔을 나타내는 문자 R(빨간색 볼) 또는 B(파란색 볼)가 공백 없이 주어진다. 문자열에는 R 또는 B 중 한 종류만 주 www.acmicpc.net 풀이과정 1. 문자열을 각각 r과 b를 기준으로 나누어준다. 2. 공의 이동횟수는 문자열의 길이이다. 3. 뒤로보낼때는 가장마지막문자열을 제외한길이 , 앞으로 보낼때는 가장앞의문자열을 제외한길이 정답 느낀점 1. 이게 초딩 문제???????? 2. 접을까 ??
https://www.acmicpc.net/problem/11034 11034번: 캥거루 세마리2 여러개의 테스트 케이스로 이루어져 있으며, 세 캥거루의 초기 위치 A, B, C가 주어진다. (0 < A < B < C < 100) www.acmicpc.net 풀이과정 정답 느낀점 1. 문제질이 안좋다. 넌센스도아니고 ㅡ.ㅡ 2. try문장에 오류가뜨면 except문을 실행한다.
https://www.acmicpc.net/problem/12018 12018번: Yonsei TOTO 첫째 줄에는 과목 수 n (1 ≤ n ≤ 100)과 주어진 마일리지 m (1 ≤ m ≤ 100)이 주어진다. 각 과목마다 2줄의 입력이 주어지는데 첫째 줄에는 각 과목에 신청한 사람 수 Pi과 과목의 수강인원 Li이 주어 www.acmicpc.net 풀이과정 1. 테스트 케이스하나당 mile에 추가해준다. 2. 내림차순으로 정렬된 array에 p가 l보다 클때 작을때로 비교해준다. 3. 재정렬해준뒤 큰값부터 삭제해주는 while문을 써준다. 정답 느낀점 1. 한번에 풀어버렸다!!. 2. 1개의 수업당 mile에 바로바로 추가해주는게 핵심!!
https://www.acmicpc.net/problem/20044 20044번: Project Teams 입력은 표준입력을 사용한다. 입력의 첫 번째 행에는 팀 수를 나타내는 양의 정수 n(1 ≤ n ≤ 5,000)이 주어진다. 그 다음 행에 학생 si 의 코딩 역량 w(si)를 나타내는 2n개의 양의 정수가 공백으로 www.acmicpc.net 풀이과정 1. 리스트의 0번째 인덱스값과 -1번째 인덱스값을 더한것의 최솟값을 구해주면 된다. 정답 느낀점 1. easy
https://www.acmicpc.net/problem/13417 13417번: 카드 문자열 입력 데이터는 표준 입력을 사용한다. 입력은 T개의 테스트 데이터로 구성된다. 입력의 첫째 줄에 테스트 케이스의 개수를 나타내는 자연수 T가 주어진다. 각각의 테스트 케이스의 첫째 줄에 처 www.acmicpc.net 풀이과정 1. 두번째 카드의 값이 현재값보다 작으면 앞에 추가해주고 아니면 뒤에추가해준다. 2. 작을때만 현재값을 바꿔준다. 정답 느낀점 1. easy
https://www.acmicpc.net/problem/17224 17224번: APC는 왜 서브태스크 대회가 되었을까? 2019년 올해도 어김없이 아주대학교 프로그래밍 경시대회(Ajou Programming Contest, APC)가 열렸다! 올해 새롭게 APC의 총감독을 맡게 된 준표는 대회 출제 과정 중 큰 고민에 빠졌다. APC에 참가하는 참가 www.acmicpc.net 풀이과정 1. 맞출수있는 모든 문제를 확인한다. 2. 내림차순으로 정렬한뒤 k번째 인덱스까지의 합을 출력한다. 정답 느낀점 1. 맞추긴했지만 복잡하게 코드를 짯다. 2. for문안에 입력값을 받을수있다 # x,y = map(int,input().split())
https://www.acmicpc.net/problem/1246 1246번: 온라인 판매 첫째 줄에 정수 N(1 ≤ N ≤ 1,000)과 M(1 ≤ M ≤ 1,000)이 입력된다. 둘째 줄부터 M+1번째 줄까지 i+1번째 줄에는 Pi(1 ≤ Pi ≤ 1,000,000)가 입력된다. www.acmicpc.net 풀이과정 1. egg를 내림차순으로 정렬해준다. 2. 인덱스값 + 1 이 n을 넘으면 for문을 멈춰준다. 3. 넘지않으면 달걀을 팔수있으므로 리스트에 추가해준다. 4. 리스트를 다시 내림차순으로 정렬해준뒤 출력해준다. 정답 느낀점 1. 달걀의 개수가 손님보다 적을때를 생각해줘야한다. 2. enumerate 를 기억하자!!
https://www.acmicpc.net/problem/14469 14469번: 소가 길을 건너간 이유 3 첫 번째 소는 2초에 도착하고 3초에 농장을 입장한다. 그 다음에는 세 번째 소가 5초에 도착하여 12초에 농장을 입장한다. 마지막으로 두 번째 소가 8초에 오는데, 세 번째 소가 검문을 받고 있으 www.acmicpc.net 풀이 1. 소가 먼저온 순서대로 정렬해준다. 2. 리스트를 돌면서 cnt보다 작으면 y값만 더해주고 크면 cnt를 x+y 값으로 바꿔준다. 정답 느낀점 1. sorted(정렬할대상,key=함수)