전체 글 349

[백준/C & C++] 1966 프린터 큐

https://www.acmicpc.net/problem/1966 1966번: 프린터 큐 여러분도 알다시피 여러분의 프린터 기기는 여러분이 인쇄하고자 하는 문서를 인쇄 명령을 받은 ‘순서대로’, 즉 먼저 요청된 것을 먼저 인쇄한다. 여러 개의 문서가 쌓인다면 Queue 자료구조에 www.acmicpc.net C #include #include typedef struct { int value; int index; } input; int cmp(const void* a, const void* b) { int num1 = *(int*)a; int num2 = *(int*)b; if (num1 < num2) return 1; else if (num1 == num2) return 0; else return -1;..

PS (C, C++) 2023.02.02

[백준/C & C++] 1439 뒤집기

https://www.acmicpc.net/problem/1439 1439번: 뒤집기 다솜이는 0과 1로만 이루어진 문자열 S를 가지고 있다. 다솜이는 이 문자열 S에 있는 모든 숫자를 전부 같게 만들려고 한다. 다솜이가 할 수 있는 행동은 S에서 연속된 하나 이상의 숫자를 잡고 모 www.acmicpc.net C #include #include char input[1000001]; int main() { int len_0 = 0, len_1 = 0; scanf("%s", &input); for (int i = 1; i < strlen(input); i++) { if (input[i - 1] != input[i]) (input[i - 1] == '0') ? len_0++ : len_1++; if (i =..

PS (C, C++) 2023.02.01

[백준/C & C++] 1347 미로 만들기

https://www.acmicpc.net/problem/1347 1347번: 미로 만들기 홍준이는 미로 안의 한 칸에 남쪽을 보며 서있다. 미로는 직사각형 격자모양이고, 각 칸은 이동할 수 있거나, 벽을 포함하고 있다. 모든 행과 열에는 적어도 하나의 이동할 수 있는 칸이 있다. 홍 www.acmicpc.net C #include int main() { int n, minx=51, maxx=51, miny=51, maxy=51, x=51, y=51, way=0; char str[103][103], input[50]; scanf("%d", &n); scanf("%s", &input); for (int i = 0; i < 103; i++) for (int j = 0; j < 103; j++) str[i][..

PS (C, C++) 2023.01.31

[백준/C & C++] 3273 두 수의 합

https://www.acmicpc.net/problem/3273 3273번: 두 수의 합 n개의 서로 다른 양의 정수 a1, a2, ..., an으로 이루어진 수열이 있다. ai의 값은 1보다 크거나 같고, 1000000보다 작거나 같은 자연수이다. 자연수 x가 주어졌을 때, ai + aj = x (1 ≤ i < j ≤ n)을 만족하는 www.acmicpc.net C #include #include int compare(const void *a, const void *b); int binarySearch(int arr[], int n, int find); int main() { int n, result, count=0; scanf("%d", &n); int* arr = (int*)malloc(sizeo..

PS (C, C++) 2023.01.30

[백준/C & C++] 2740 행렬 곱셈

https://www.acmicpc.net/problem/2740 2740번: 행렬 곱셈 첫째 줄에 행렬 A의 크기 N 과 M이 주어진다. 둘째 줄부터 N개의 줄에 행렬 A의 원소 M개가 순서대로 주어진다. 그 다음 줄에는 행렬 B의 크기 M과 K가 주어진다. 이어서 M개의 줄에 행렬 B의 원소 K개 www.acmicpc.net C #include int main() { int n, m, k, a[101][101], b[101][101], result[101][101] = { 0, }; scanf("%d %d", &n, &m); for (int i = 0; i < n; i++) for (int j = 0; j < m; j++) scanf("%d", &a[i][j]); scanf("%d %d", &m, &..

PS (C, C++) 2023.01.29

[백준/C & C++] 1269 대칭차집합

https://www.acmicpc.net/problem/1269 1269번: 대칭 차집합 첫째 줄에 집합 A의 원소의 개수와 집합 B의 원소의 개수가 빈 칸을 사이에 두고 주어진다. 둘째 줄에는 집합 A의 모든 원소가, 셋째 줄에는 집합 B의 모든 원소가 빈 칸을 사이에 두고 각각 주어 www.acmicpc.net C #include #include int compare(const void* a, const void* b) { int num1 = *(int*)a; int num2 = *(int*)b; if (num1 num2) return 1; else return 0; } int binarySearch(int start, int end, ..

PS (C, C++) 2023.01.27

[백준/C & C++] 1764 듣보잡

https://www.acmicpc.net/problem/1764 1764번: 듣보잡 첫째 줄에 듣도 못한 사람의 수 N, 보도 못한 사람의 수 M이 주어진다. 이어서 둘째 줄부터 N개의 줄에 걸쳐 듣도 못한 사람의 이름과, N+2째 줄부터 보도 못한 사람의 이름이 순서대로 주어진다. www.acmicpc.net C #include #include #include int cmp(const void* a, const void* b) { return strcmp((char*)a, (char*)b); } typedef struct { char s[21]; } name; int main() { int n, m, cnt=0; scanf("%d %d", &n, &m); name* arr = (name*)malloc..

PS (C, C++) 2023.01.26

[백준/C & C++] 2477 참외밭

https://www.acmicpc.net/problem/2477 2477번: 참외밭 첫 번째 줄에 1m2의 넓이에 자라는 참외의 개수를 나타내는 양의 정수 K (1 ≤ K ≤ 20)가 주어진다. 참외밭을 나타내는 육각형의 임의의 한 꼭짓점에서 출발하여 반시계방향으로 둘레를 돌면서 지 www.acmicpc.net C #include #include int main() { int k, max, input[6][2], minus; scanf("%d", &k); for (int i = 0; i < 6; i++) scanf("%d %d", &input[i][0], &input[i][1]); for (int i = 0; i < 6; i++) { if (input[i][0] == input[(i + 2) % 6][..

PS (C, C++) 2023.01.25

[백준/C & C++] 21921 블로그

https://www.acmicpc.net/problem/21921 21921번: 블로그 첫째 줄에 $X$일 동안 가장 많이 들어온 방문자 수를 출력한다. 만약 최대 방문자 수가 0명이라면 SAD를 출력한다. 만약 최대 방문자 수가 0명이 아닌 경우 둘째 줄에 기간이 몇 개 있는지 출력한다 www.acmicpc.net C #include int daysum[250001]; int main() { int x, n, result,max, cnt=1, day; scanf("%d %d", &n, &x); scanf("%d", &day); daysum[0] = day; for (int i = 1; i < n; i++) { scanf("%d", &day); daysum[i] = day + daysum[i - 1];..

PS (C, C++) 2023.01.24