본문 바로가기

백준

(497)
[백준 17609번] 회문 (C++) 문제링크 : https://www.acmicpc.net/problem/17609 17609번: 회문 각 문자열이 회문인지, 유사 회문인지, 둘 모두 해당되지 않는지를 판단하여 회문이면 0, 유사 회문이면 1, 둘 모두 아니면 2를 순서대로 한 줄에 하나씩 출력한다. www.acmicpc.net #include using namespace std; #define ll long long #define MAX 987654321 #define pii pair int T; string s; int func(int left, int right, int check) { while(left> T; while(T--) { cin >> s; cout
[백준 18352번] 특정 거리의 도시 찾기 (C++) 문제링크 : https://www.acmicpc.net/problem/18352 18352번: 특정 거리의 도시 찾기 첫째 줄에 도시의 개수 N, 도로의 개수 M, 거리 정보 K, 출발 도시의 번호 X가 주어진다. (2 ≤ N ≤ 300,000, 1 ≤ M ≤ 1,000,000, 1 ≤ K ≤ 300,000, 1 ≤ X ≤ N) 둘째 줄부터 M개의 줄에 걸쳐서 두 개 www.acmicpc.net #include using namespace std; #define ll long long #define MAX 987654321 #define pii pair int N, M, K, X; //도시 갯수, 도로 갯수, 거리 정보, 출발 도시 번호 int dist[300001]; vectorv[300001]; ve..
[백준 13398번] 연속합 2 (C++) 문제링크 : https://www.acmicpc.net/problem/13398 13398번: 연속합 2 첫째 줄에 정수 n(1 ≤ n ≤ 100,000)이 주어지고 둘째 줄에는 n개의 정수로 이루어진 수열이 주어진다. 수는 -1,000보다 크거나 같고, 1,000보다 작거나 같은 정수이다. www.acmicpc.net #include using namespace std; #define ll long long #define MAX 987654321 #define pii pair int arr[100001]; int dp[100001][2]; //제거하지 않은 경우와 제거한 경우 int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); int N, re..
[백준 15903번] 카드 합체 놀이 (C++) 문제링크 : https://www.acmicpc.net/problem/15903 15903번: 카드 합체 놀이 첫 번째 줄에 카드의 개수를 나타내는 수 n(2 ≤ n ≤ 1,000)과 카드 합체를 몇 번 하는지를 나타내는 수 m(0 ≤ m ≤ 15×n)이 주어진다. 두 번째 줄에 맨 처음 카드의 상태를 나타내는 n개의 자연수 a1, www.acmicpc.net #include using namespace std; #define ll long long #define MAX 987654321 #define pii pair ll arr[1000]; int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); int N, M; cin >> N >> M; for(..
[백준 27979번] 볼링장 아르바이트 (C++) 문제링크 : https://www.acmicpc.net/problem/27979 27979번: 볼링장 아르바이트 건구스는 볼링장에서 아르바이트하고 있다. 건구스의 퇴근 전 마지막 업무는 $N$개의 볼링공의 순서를 볼링공의 무게 순서대로 정리하는 것이다. 즉, 모든 $i, j\ ( 1 \le i >..
[백준 2513번] 통학버스 (C++) 문제링크 : https://www.acmicpc.net/problem/2513 2513번: 통학버스 첫째 줄에는 세 개의 양의 정수 N, K, S가 빈칸을 사이에 두고 순서대로 주어진다. 첫 번째 정수 N은 아파트 단지의 수이며 2 ≤ N ≤ 30,000이다. 두 번째 정수 K는 1 ≤ K ≤ 2,000이며, 통학버스의 정원 www.acmicpc.net #include using namespace std; #define ll long long #define MAX 987654321 #define pii pair int N, K, S; //단지 수, 통학버스 정원, 학교 위치 vector lefts; vector rights; int distance(vector v) { int pos = S, num = ..
[백준 1991번] 트리 순회 (C++) 문제링크 : https://www.acmicpc.net/problem/1991 1991번: 트리 순회 첫째 줄에는 이진 트리의 노드의 개수 N(1 ≤ N ≤ 26)이 주어진다. 둘째 줄부터 N개의 줄에 걸쳐 각 노드와 그의 왼쪽 자식 노드, 오른쪽 자식 노드가 주어진다. 노드의 이름은 A부터 차례대로 알파 www.acmicpc.net #include using namespace std; #define ll long long #define MAX 987654321 #define pii pair pair tree[26]; void pre(char node) //전위 { if(node == '.') return; cout > root >> left >> right; tree[root - 'A'].first =..
[백준 17144번] 미세먼지 안녕! (C++) 문제링크 : https://www.acmicpc.net/problem/17144 17144번: 미세먼지 안녕! 미세먼지를 제거하기 위해 구사과는 공기청정기를 설치하려고 한다. 공기청정기의 성능을 테스트하기 위해 구사과는 집을 크기가 R×C인 격자판으로 나타냈고, 1×1 크기의 칸으로 나눴다. 구사 www.acmicpc.net #include using namespace std; #define ll long long #define MAX 987654321 #define pii pair int R, C, T, result = 0; int arr[50][50]; //기존 배열 int arr_changed[50][50]; //변동된 배열 int dr[] = {1, -1, 0, 0}; int dc[] = {0, ..