분류 전체보기

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..
https://velog.io/@jay6768/BOJ-Python-16395-파스칼의-삼각형 Intro 이항계수를 삼각형 형태로 배열한 파스칼의 삼각형. n번째 행의 k번째 수를 구하는 문제이다. n=3, k=2라면 정답은 2이다. Solution 크기를 n으로 하여 삼각형을 의미하는 배열 arr을 미리 만들어둔다. n번째 행의 k번째 수는 n-1번째 행의 k-1번째 수와 k번째 수를 더한 값이다. Code def main(): n, k = map(int, input().split()) arr = [[1]*i for i in range(1, n+1)] for i in range(2, n): for j in range(1, i): arr[i][j] = arr[i-1][j-1] + arr[i-1][j] pr..
https://www.acmicpc.net/problem/5363 5363번: 요다 첫째 줄에 문장의 수 N이 주어진다. 둘째 줄부터 N개의 줄에는 각 문장이 주어진다. 문장의 길이는 100글자 이내이다. 단어의 개수는 3개 이상이다. www.acmicpc.net 문제해석 입력받은 문장의 맨 앞 두 단어를 문장의 맨 뒤로 보낸다 입력받은 문자열에서 앞에 2단어를 따로 빼낸 후, 맨 앞 두 단어를 지우고 맨 뒤로 붙이는 식의 과정으로 풀이를 함 코드 문제 풀이 1. N값을 입력받음 2. 문장을 리스트로 입력받음 3. 앞 단어 2개를 다른 리스트로 옮김 4. 입력받은 문장리스트에서 앞 단어 2개를 지움 5. 따로 빼놓은 앞 단어 2개를 입력받은 문장 리스트에 붙이고 출력한다.
https://www.acmicpc.net/problem/1463 1463번: 1로 만들기 첫째 줄에 1보다 크거나 같고, 106보다 작거나 같은 정수 N이 주어진다. www.acmicpc.net 문제 해석 N 개의 수가 주어지면 주어진 조건을 사용하여 1로 만드는 최소 연산 횟수를 구하는 문제이다. 예시로 10의 경우에 10 > 9 > 3 > 1 로 바꿀 수 있으므로 3을 출력해야 한다. 코드 input = __import__('sys').stdin.readline n = int(input()) dp = [-1] * 1000001 dp[0] = 0 dp[1] = 0 dp[2] = 1 dp[3] = 1 for i in range(4,n+1): dp[i] = dp[i-1] + 1 if i % 2 == 0:..
https://www.acmicpc.net/problem/13699 13699번: 점화식 다음의 점화식에 의해 정의된 수열 t(n)을 생각하자: t(0)=1 t(n)=t(0)*t(n-1)+t(1)*t(n-2)+...+t(n-1)*t(0) 이 정의에 따르면, t(1)=t(0)*t(0)=1 t(2)=t(0)*t(1)+t(1)*t(0)=2 t(3)=t(0)*t(2)+t(1)*t(1)+t(2)*t(0)=5 ... 주어진 입력 0 ≤ n www.acmicpc.net 문제분석 점화식 t(n)이 주어지고 정수를 입력받아 점화식에 해당하는 정수를 대입했을 때의 값을 출력하는 되는 문제이다. 문제에 t(0), t(1), t(2), t(3)이 주어져 있으므로 이를 이용하여 점화식을 만들면 된다. 코드 n = int(inp..
KauKoala
'분류 전체보기' 카테고리의 글 목록 (122 Page)