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

3449번: 해밍 거리 (acmicpc.net) 3449번: 해밍 거리 입력을 여러 개의 테스트 케이스로 이루어져 있다. 첫째 줄에는 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스는 두 줄로 이루어져 있다. 각 줄에는 이진수가 하나씩 주어진다. 두 이진 www.acmicpc.net 문제 해석 두 이진수의 서로 다른 자리수의 개수를 찾는다. 코드 문제 풀이 이진수를 문자열로 받은다음 list로 변환시켜서 각 자리마다 요소하나로 저장한다. 그 후, list 길이만큼 for문을 돌리며 list a와 list b를 xor해서 1이 나올 경우 count에 1을 더한다.
https://www.acmicpc.net/problem/2908 2908번: 상수 상근이의 동생 상수는 수학을 정말 못한다. 상수는 숫자를 읽는데 문제가 있다. 이렇게 수학을 못하는 상수를 위해서 상근이는 수의 크기를 비교하는 문제를 내주었다. 상근이는 세 자리 수 두 www.acmicpc.net 문제 해석 칠판에 두 수가 주어질 것이다. 하지만 상근이는 이 두수를 거꾸로 읽는다. 거꾸로 읽었을 때, 가장 큰 수를 출력해낼 수 있는 프로그램을 작성하기!! 코드 문제 풀이 a와b가 주어지면 input과 split함수를 이용해 입력하고 두 수를 구분해준다. 그리고 각각 숫자가 반대로 되었을 때, 두 수의 크기를 비교해 a가 크면 그 바뀐 숫자가 출력되게 명령한다. 반대로 b가 크다면 b가 출력되게 코드를 ..
https://www.acmicpc.net/problem/2562 2562번: 최댓값 9개의 서로 다른 자연수가 주어질 때, 이들 중 최댓값을 찾고 그 최댓값이 몇 번째 수인지를 구하는 프로그램을 작성하시오. 예를 들어, 서로 다른 9개의 자연수 3, 29, 38, 12, 57, 74, 40, 85, 61 이 주어 www.acmicpc.net 문제해석 서로 다른 자연수 9개를 입력받는다. 최댓값과 그 수가 몇번째 수인지 찾아 출력한다. 코드 문제풀이 리스트 하나를 생성한다. 자연수 9개를 입력받으므로 for문을 이용하여 9회 반복한다. input을 통해 입력받고 append함수를 통해 리스트에 값을 넣는다. 최댓값을 알려주는 max함수를 통해 값을 얻는다. 리스트의 index+1이 그 수의 번호이므로 i..
19698번: 헛간 청약 (acmicpc.net) 19698번: 헛간 청약 $1 \le N, W, H, L \le 1,000$ www.acmicpc.net 소스코드 문제 풀이 헛간의 가로 길이W 세로길이 H 이면 소는 가로로 W//L만큼 갈수 있고 세로로 H//L만큼 들어갈수 있다 따라서 헛간에 들어갈수 있는 최대 소의 수는 (W//L)*(H//L)이고 이 수가 N보다 크면 N마리가 들어갈수 있는 최대 마리수 이다
https://www.acmicpc.net/problem/13752 13752번: 히스토그램 히스토그램은 데이터를 시각적으로 표현한 것이다. 막대로 구성되며 각 막대의 길이는 데이터 양의 크기를 나타낸다. 일부 데이터가 주어지면 히스토그램을 생성하시오. www.acmicpc.net 문제 해석 '첫 번째 줄에는 테스트 케이스의 개수 n (1 ≤ n ≤ 100)이 주어진다.' => 출력할 테스트 케이스의 변수 필요 '각 테스트 케이스에 대해서 히스토그램의 크기 k와 동일한 수의 '='를 출력한다.' => '='을 출력하기 위한 반복문 필요 코드 #include using namespace std; int main() { int n; int chart; cin >> n; for (int i = 0; i < n..
문제해석 테스트 케이스를 몇 번할 것인지에 대해서 숫자를 입력받고, 입력 받은 숫자만큼 숫자를 차례대로 입력해주면, 입력해준 숫자만큼 '='이 나와야 하므로, for문을 써야겠다는 생각이 들었다. 코드 문제풀이 테스트 케이스를 입력받을 변수와 =을 얼만큼 반복해줄지 결정해주는 변수를 지정해주었다. 그 다음, for문을 중첩으로 사용하여 먼저 테스트 케이스를 얼마나 반복해줄지 결정하는 수를 입력받아 반복해주고, 그 과정 속에서 for문을 사용하여 =을 사용자가 다시 입력한 수만큼 반복할 수 있도록 해주었다.
https://www.acmicpc.net/problem/1264 1264번: 모음의 개수 입력은 여러 개의 테스트 케이스로 이루어져 있으며, 각 줄마다 영어 대소문자, ',', '.', '!', '?', 공백으로 이루어진 문장이 주어진다. 각 줄은 최대 255글자로 이루어져 있다. 입력의 끝에는 한 줄 www.acmicpc.net 문제해석 문장들을 입력받는다. 각 줄의 문장마다 모음의 개수를 출력해준다. 코드 문제풀이 각 문장들을 하나의 리스트 형식으로 하여 또 다른 리스트에 넣어준다. 그리하여 이차원 리스트로 각 문장들의 문자들에 접근해준다. mo라는 변수를 통해 각 문장들에서 모음이 출현할 때 마다 하나씩 늘려주어 한 문장씩 모음의 개수를 출력해준다.
2675번: 문자열 반복 (acmicpc.net) 2675번: 문자열 반복 문자열 S를 입력받은 후에, 각 문자를 R번 반복해 새 문자열 P를 만든 후 출력하는 프로그램을 작성하시오. 즉, 첫 번째 문자를 R번 반복하고, 두 번째 문자를 R번 반복하는 식으로 P를 만들면 된다 www.acmicpc.net 문제해석 우선 테스트 케이스의 개수와 반복할 횟수를 각각 입력받는다. 이후 입력받은 문자열 S를 반복할 횟수만큼 출력한다. 코드 문제풀이 먼저 테스트 할 개수 T를 입력받는다. 이후 반복할 횟수인 a, 반복할 문자인 b를 입력받는다. for문을 활용해 반복할 횟수의 범위를 정해준다. 입력받은 b의 j번째 문자를 반복해 출력한다. ,end=""를 이용해 줄바꿈을 막는다.
코드 N = list(map(int,input().split())) A = sorted(N) if N == A: print('Good') else: print('Bad')
​​문제 ​문제풀이 문제의 경우 0이 나오면 앞에 나온 숫자를 지우면 되기 때문에 파이썬에서는 이를 리스트를 이용하여 쉽게 구현해 낼 수 있다. 먼저 변수 a에 숫자를 입력받고 입력받은 숫자만큼 반복문을 돌려 b를 리스트에 삽입한다. 그 이후 b에 0이 나올 때마다 리스트에 가장 나중에 들어온 즉, 맨 뒤의 리스트 요소를 삭제시키고 마지막에 리스트 요소의 총 합을 출력한다. import sys a = int(sys.stdin.readline()) li = [] for i in range(a): b = int(sys.stdin.readline()) if b == 0: del li[-1] else: li.append(b) print(sum(li))
https://www.acmicpc.net/problem/10808 10808번: 알파벳 개수 단어에 포함되어 있는 a의 개수, b의 개수, …, z의 개수를 공백으로 구분해서 출력한다. www.acmicpc.net 문제해석 1. 입력할 단어를 받을 문자열 변수 s가 필요하다. 2. 26개의 알파벳의 아스키코드를 담은 리스트 alphabet_list가 필요하다. 3. 26개의 0을 다음 리스트 zero_list를 선언한 뒤 각 자리를 알파벳 순서와 대칭시킨디. ex) zero_list[0] a & zero_list[25] z 4. 문자열s 각 글자의 아스키코드를 활용하여 alphabet_list에 포함되어 있으면 해당하는 알파벳 순서와 일치하는 리스트 zero_list 자리 값에 1을 더한다. 코드 코드..
https://www.acmicpc.net/problem/17094 17094번: Serious Problem 2의 등장횟수가 더 많다면 2를 출력하고, e의 등장횟수가 더 많다면 e를 출력한다. 등장횟수가 같다면 "yee"를 출력한다. (큰 따옴표 제외) www.acmicpc.net 문제 해석 문자열의 길이를 먼저 입력받고, 문자열을 입력받은 후 2와 e의 개수를 비교한다. 2가 더 많을땐 2를 출력하고 e가 더 많을땐 e를 출력한다. 단, 둘의 개수가 같을시엔 yee 를 출력한다. 코드 #include using namespace std; string str; int n; int cnt1, cnt2; int main(void) { cin >> n; cin >> str; for (int i = 0; i..
KauKoala
'Koala - 6기/기초 알고리즘 스터디' 카테고리의 글 목록 (4 Page)