Koala - 9기/기초 알고리즘 스터디

2511번: 카드놀이 첫 번째 줄에는 게임이 끝난 후, A와 B가 받은 총 승점을 순서대로 빈칸을 사이에 두고 출력한다. 두 번째 줄에는 이긴 사람이 A인지 B인지 결정해서, 이긴 사람을 문자 A 또는 B로 출력한다. 만약 www.acmicpc.net 문제코드
2576번: 홀수 (acmicpc.net) 2576번: 홀수 7개의 자연수가 주어질 때, 이들 중 홀수인 자연수들을 모두 골라 그 합을 구하고, 고른 홀수들 중 최솟값을 찾는 프로그램을 작성하시오. 예를 들어, 7개의 자연수 12, 77, 38, 41, 53, 92, 85가 주어지 www.acmicpc.net Koala 깃북에서는 sum_odd와 min_odd의 변수를 설정해서 풀었지만, 나는 arr2 리스트 설정과 sum함수와 min함수를 사용하여 문제를 풀었다. 먼저 아무것도 없는 arr 리스트에 for문과 append함수를 통해 리스트를 채워주고, 마찬가지로 arr2 리스트를 설정하여 arr 리스트 요소 중 홀수들을 arr2 리스트에 채워넣었다. 그리고 arr 리스트에 홀수가 없어서 arr2 리스트..
https://www.acmicpc.net/problem/2822 2822번: 점수 계산 8개 줄에 걸쳐서 각 문제에 대한 참가자의 점수가 주어진다. 점수는 0보다 크거나 같고, 150보다 작거나 같다. 모든 문제에 대한 점수는 서로 다르다. 입력으로 주어지는 순서대로 1번 문제, 2번 문 www.acmicpc.net 잘못된 첫번째 접근 처음에는 배열을 만들어서 8번의 점수를 입력받고, sort로 내림차순 정렬하여 5번째 인덱스까지의 값을 더하려고 했다. 두번째 줄 출력값(인덱스 값)은 입력받은 배열을 복사하여, 또다시 sort 한다음 찾고자 하는 원소의 인덱스를 출력하려고 했다. C++ STL, push.back() 명령어를 통해, 벡터 배열의 끝자리에서 계속 원소를 추가할 수 있고, 임의의 원소에 접..
문제 https://www.acmicpc.net/problem/10953 10953번: A+B - 6 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. www.acmicpc.net 코드 풀이 a,b인 입력값을 받을 때 "%d,%d"로 받으면 콤마의 자료형을 지정하지 않고 상수만 입력받을 수 있다.
문제 14724번: 관리자는 누구? PROBRAIN, GROW, ARGOS, ADMIN, ANT, MOTION, SPG, COMON, ALMIGHTY중 동문 커뮤니티 관리자로 선발되는 후보가 소속한 동아리의 이름을 대문자로 출력한다. www.acmicpc.net 문제 해석 9개의 동아리 부원들이 백준 문제를 각각 풀었는데, 1. 각 동아리 (최소) 부원 수는 계속 달라지며 2. 각 동아리별로 백준 문제를 가장 많이 푼 사람이 그 동아리의 대표가 되고 3. 동문 커뮤니티 관리자는 모든 동아리 대표 중 가장 많은 문제를 푼 사람이 된다. 4. 단, 여기서 각 동아리의 순서는 고정이다. 문제 풀이 우선 동아리 이름 별로 대표가 존재하고 그 대표가 푼 문제 수가 중요하므로, 동아리 이름과 그 동아리 대표가 푼 ..
10886번: 0 = not cute / 1 = cute (acmicpc.net) 10886번: 0 = not cute / 1 = cute 준희는 자기가 팀에서 귀여움을 담당하고 있다고 생각한다. 하지만 연수가 볼 때 그 의견은 뭔가 좀 잘못된 것 같았다. 그렇기에 설문조사를 하여 준희가 귀여운지 아닌지 알아보기로 했다. www.acmicpc.net 총 n명에게 설문조사를 하여 더 많은 득표를 얻은 의견을 출력하는 문제이다. 설문조사 답변에서 0은 준희가 귀엽지 않다는 뜻이고, 1은 준희가 귀엽다는 뜻이다. 설문조사를 시작하기 앞서 변수 c와 nc를 0으로 지정하였다. 그 후로 for문을 돌려 답변이 1이 나오면 c가 하나 추가되게끔, 답변이 0이 나오면 nc가 하나 추가되게끔 하였다. for문이 끝난 ..
https://www.acmicpc.net/problem/3460 3460번: 이진수 양의 정수 n이 주어졌을 때, 이를 이진수로 나타냈을 때 1의 위치를 모두 찾는 프로그램을 작성하시오. 최하위 비트(least significant bit, lsb)의 위치는 0이다. www.acmicpc.net 문제 핵심 개념 입력받은 수(13)을 이진수로 바꿔서 문자열에 집어넣는게 아니라 이진수 중에 1의 인덱스자리를 출력하는 문제다. '인덱스'에 꽂혀서 이진수를 string 문자열로 굳이 받으려고 해서, 불러오고 북치고 장구침... 근데 굳이 문자열로 안받고 2로 나눈 나머지가 0인지 1인지 정하고, 나머지가 1이면 최종값(idx라고 변수 설정)에 1을 더하고, 나머지가 0이면 그냥 넘어간다.
2839번: 설탕 배달 (acmicpc.net) 2839번: 설탕 배달 상근이는 요즘 설탕공장에서 설탕을 배달하고 있다. 상근이는 지금 사탕가게에 설탕을 정확하게 N킬로그램을 배달해야 한다. 설탕공장에서 만드는 설탕은 봉지에 담겨져 있다. 봉지는 3킬로그 www.acmicpc.net 문제 소스코드 문제풀이 문제에서 요구하는 최소의 봉지 수를 구할 수 있는 방법은 5킬로그램 봉지의 수를 최대로 한채 나머지인 n%5 에 대해 3킬로그램 봉지를 고려하는 것에 초점을 잡았다. 즉, 입력한 n에 대해 5로 나눈 나머지 a는 초기상태가 최소값이다. a%3 == 0이면 최소 봉지 수 조건을 만족하므로 while 반복문을 탈출한다. 만약 a %3 값이 0이면, 자루수(ans)을 구하기 위해 반복문을 탈출 한다. 만약 ..
https://www.acmicpc.net/problem/20540 20540번: 연길이의 이상형 졸업을 앞둔 연길이는 크리스마스가 다가올수록 외로움을 느낀다. 그런 연길이를 위해 동우는 소개팅을 시켜주지는 않고 연길이의 이상향을 찾는 것을 도와주고자 한다. MBTI 신봉자인 연길이는 www.acmicpc.net [문제 해석] 문자열을 이용해서 정반대인 MBTI를 구하는 문제이다. 변수 a, b, c, d에 각각의 지표를 입력하게 하고, 조건문인 if문을 사용해서 각각의 정반대인 지표를 출력하는 반복문을 이용한다. [코드] #include int main() { char a, b, c, d; int i; scanf("%c%c%c%c", &a, &b, &c, &d); if(a == 'E'){ printf(..
https://www.acmicpc.net/problem/11721 11721번: 열 개씩 끊어 출력하기 첫째 줄에 단어가 주어진다. 단어는 알파벳 소문자와 대문자로만 이루어져 있으며, 길이는 100을 넘지 않는다. 길이가 0인 단어는 주어지지 않는다. www.acmicpc.net 문제 소스코드 문제해결 처음에는 문자열에서 [:10] 10개 출력하고, 출력한 것을 문자열에서 제거해서 다시 [:10] 출력을 반복하려 했지만, step이 떠올라 쉽게 해결할 수 있었다. (이게 왜 바로 안떠올랐는지...)
https://www.acmicpc.net/problem/11021 11021번: A+B - 7 각 테스트 케이스마다 "Case #x: "를 출력한 다음, A+B를 출력한다. 테스트 케이스 번호는 1부터 시작한다. www.acmicpc.net 문제 소스코드 문제풀이 숏코딩을 연습하기 위해 테스트 케이스의 개수를 변수 저장할 이유가 없기 때문에 range안에 입력을 받게 했고, 출력은 f-string을 사용하여 구현했다.
https://www.acmicpc.net/problem/20540 20540번: 연길이의 이상형 졸업을 앞둔 연길이는 크리스마스가 다가올수록 외로움을 느낀다. 그런 연길이를 위해 동우는 소개팅을 시켜주지는 않고 연길이의 이상향을 찾는 것을 도와주고자 한다. MBTI 신봉자인 연길이는 www.acmicpc.net [문제 해석] 정반대되는 MBTI를 찾는 문제. 배열에 모든 MBTI 알파벳을 저장해두고 입력받은 MBTI알파벳을 지운 뒤 문자열로 합치면 된다. join 함수는 매개변수로 들어온 리스트에 있는 요소 하나하나를 합쳐서 하나의 문자열로 바꾸어 반환하는 함수입니다. python의 join 함수 사용하면 join 앞의 내용을 기준으로 리스트 요소를 합친 문자열을 반환한다 [코드]
KauKoala
'Koala - 9기/기초 알고리즘 스터디' 카테고리의 글 목록 (10 Page)