본문 바로가기

컴퓨터/백준 알고리즘

(177)
백준 알고리즘 10871번: X보다 작은 수 [C++] 문제 출처: www.acmicpc.net/problem/10871 10871번: X보다 작은 수 첫째 줄에 N과 X가 주어진다. (1 ≤ N, X ≤ 10,000) 둘째 줄에 수열 A를 이루는 정수 N개가 주어진다. 주어지는 정수는 모두 1보다 크거나 같고, 10,000보다 작거나 같은 정수이다. www.acmicpc.net 1. 코드 (실행) 2. 풀이 int n, x; cin >> n >> x; n과 x를 입력받는다. while(n--) 그리고 n만큼 반복을 시킨다. int a; cin >> a; 그리고 n만큼 a를 입력을 한 뒤에 if(a < x) cout
백준 알고리즘 2439번: 별 찍기 - 2 [C++] 문제 출처: www.acmicpc.net/problem/2439 2439번: 별 찍기 - 2 첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제 하지만, 오른쪽을 기준으로 정렬한 별(예제 참고)을 출력하시오. www.acmicpc.net 1. 코드 (실행) 2. 풀이 예시로 먼저 설명을 하겠다. 5를 입력했을 때 위 그림과 같이 나오는데 패턴을 아래 표는 패턴을 정리한 것이다. 띄어쓰기 횟수 * 횟수 첫 번째 줄 4번 1번 두 번째 줄 3번 2번 세 번째 줄 2번 3번 네 번째 줄 1번 4번 다섯 번째 줄 0번 5번 그렇다면 아래 표와 같이 표현할 수 있다. 띄어쓰기 횟수 * 횟수 첫 번째 줄 5 - 1 = 4번 5 - (5 - 1) = 5 - 4 = 1번 두 번째 줄 5 ..
백준 알고리즘 11021번: A+B - 7 [C++] 문제 출처: www.acmicpc.net/problem/11021 11021번: A+B - 7 각 테스트 케이스마다 "Case #x: "를 출력한 다음, A+B를 출력한다. 테스트 케이스 번호는 1부터 시작한다. www.acmicpc.net 1. 코드 2. 풀이 int T, A, B; cin >> T; 테스트 케이스의 횟수를 제일 처음에 입력하기에 T를 선언 후 입력을 한다. for (int i = 1; i > A >> B; cout
백준 알고리즘 2742번: 기찍 N [C++] 문제 출처: www.acmicpc.net/problem/2742 2742번: 기찍 N 자연수 N이 주어졌을 때, N부터 1까지 한 줄에 하나씩 출력하는 프로그램을 작성하시오. www.acmicpc.net 1. 코드 (실행) 2. 풀이 cin.tie(NULL); ios::sync_with_stdio(false); 이 코드를 이용하여 버퍼로 인한 지연 속도를 최소화시켜서 더 빠르게 실행될 수 있게 한다. 만약 이것을 사용하지 않는다면 속도가 너무 느려서 시간 초과에 걸리게 된다. int N; cin >> N; 그리고 N을 입력을 받는다. for(int i = N; i > 0; i--) cout
백준 알고리즘 15552번: 빠른 A+B [C++] 문제 출처: www.acmicpc.net/problem/15552 15552번: 빠른 A+B 첫 줄에 테스트케이스의 개수 T가 주어진다. T는 최대 1,000,000이다. 다음 T줄에는 각각 두 정수 A와 B가 주어진다. A와 B는 1 이상, 1,000 이하이다. www.acmicpc.net 1. 코드 (실행) 2. 풀이 cin.tie(NULL); 메인 함수에 처음에 이것을 선언하는데 이것은 cin과 cout의 묶을 풀어주는 구문이라고 한다. cin으로 데이터를 읽을 때 출력 버퍼에 있는 내용을 비우는데 비우지 않고 먼저 입력을 받는다. ios::sync_with_stdio(false); 이 구문은 C와 C++의 버퍼를 분리하는 역할을 한다고 한다. int T; cin >> T; 그다음에 테스트 케이스의..
백준 알고리즘 8393번: 합 [C++][재귀] 문제 출처: www.acmicpc.net/problem/8393 8393번: 합 n이 주어졌을 때, 1부터 n까지 합을 구하는 프로그램을 작성하시오. www.acmicpc.net 1. 코드 (실행) 2. 풀이 int N; cin >> N; 먼저 N을 입력을 한다. cout
백준 알고리즘 10950번: A+B - 3 [C++] 문제 출처: www.acmicpc.net/problem/10950 10950번: A+B - 3 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. www.acmicpc.net 1. 코드 2. 풀이 int t; cin >> t; 먼저 t에 대한 값을 입력받는다. for(int i = 0; i > a >> b; cout
백준 알고리즘 2739번: 구구단 [C++] 문제 출처: www.acmicpc.net/problem/2739 2739번: 구구단 N을 입력받은 뒤, 구구단 N단을 출력하는 프로그램을 작성하시오. 출력 형식에 맞춰서 출력하면 된다. www.acmicpc.net 1. 코드 (실행) 2. 풀이 int n; cin >> n; 먼저 n을 입력을 받는다. for(int i = 1; i < 10; i++) cout