C 프로그래밍
-
[백준 2531] 회전초밥C 프로그래밍/BOJ 2022. 8. 21. 15:46
https://www.acmicpc.net/problem/2531 2531번: 회전 초밥 첫 번째 줄에는 회전 초밥 벨트에 놓인 접시의 수 N, 초밥의 가짓수 d, 연속해서 먹는 접시의 수 k, 쿠폰 번호 c가 각각 하나의 빈 칸을 사이에 두고 주어진다. 단, 2 ≤ N ≤ 30,000, 2 ≤ d ≤ 3,000, 2 ≤ www.acmicpc.net #include int N, d, k, c;//접시 수, 초밥의 가짓수, 연속해서 먹는 접시 수, 쿠폰번호 int susi[30000 + 10]; int diff[3000 + 10]; int max; int flag; void input(void) { scanf("%d %d %d %d", &N, &d, &k, &c); for (int i = 0; i < N;..
-
[백준 2979] 트럭 주차C 프로그래밍/BOJ 2022. 8. 20. 18:12
https://www.acmicpc.net/problem/2979 2979번: 트럭 주차 첫째 줄에 문제에서 설명한 주차 요금 A, B, C가 주어진다. (1 ≤ C ≤ B ≤ A ≤ 100) 다음 세 개 줄에는 두 정수가 주어진다. 이 정수는 상근이가 가지고 있는 트럭이 주차장에 도착한 시간과 주차장 www.acmicpc.net #include int A, B, C; int time[3 + 2][2 + 2]; int truck[100 + 10]; int cost; void input(void) { scanf("%d %d %d", &A, &B, &C); for (int i = 0; i < 3; i++) { scanf("%d %d", &time[i][0], &time[i][1]); } } void get_..
-
[백준 2670] 연속부분최대곱C 프로그래밍/BOJ 2022. 8. 20. 17:46
https://www.acmicpc.net/problem/2670 2670번: 연속부분최대곱 첫째 줄은 나열된 양의 실수들의 개수 N이 주어지고, 그 다음 줄부터 N개의 수가 한 줄에 하나씩 들어 있다. N은 10,000 이하의 자연수이다. 실수는 소수점 첫째자리까지 주어지며, 0.0보다 크거나 www.acmicpc.net // 시간복잡도 : O(N) // 권장 #include int N; double num[10000 + 10]; double max; void input(void) { scanf("%d", &N); for (int i = 0; i < N; i++) { scanf("%lf", &num[i]); } } void get_max(void) { double tmp = 1; for (int i =..
-
[백준 2578] 빙고C 프로그래밍/BOJ 2022. 8. 20. 17:13
https://www.acmicpc.net/problem/2578 2578번: 빙고 첫째 줄부터 다섯째 줄까지 빙고판에 쓰여진 수가 가장 위 가로줄부터 차례대로 한 줄에 다섯 개씩 빈 칸을 사이에 두고 주어진다. 여섯째 줄부터 열째 줄까지 사회자가 부르는 수가 차례대로 www.acmicpc.net #include int board[5 + 2][5 + 2]; int call[5 * 5 + 2]; void input(void) { for (int i = 0; i < 5; i++) { for (int j = 0; j < 5; j++) { scanf("%d", &board[i][j]); } } for (int i = 0; i < 5 * 5; i++) { scanf("%d", &call[i]); } } void ..
-
[백준 2659] 십자카드 문제C 프로그래밍/BOJ 2022. 8. 19. 00:12
https://www.acmicpc.net/problem/2659 2659번: 십자카드 문제 입력은 한 줄로 이루어지며, 이 한 줄은 카드의 네 모서리에 씌여있는 1 이상 9 이하의 숫자 4개가 시계 방향으로 입력된다. 각 숫자 사이에는 빈칸이 하나 있다. www.acmicpc.net #include int num[4]; int div[4]; void input(void) { for (int i = 0; i < 4; i++) { scanf("%d", &num[i]); } } int get_clock(int a[])//입력받은 배열을 시계방향으로 돌면서 시계수를 구한다 { int min = 10000; for (int i = 0; i < 4; i++) { int tmp = a[i % 4] * 1000 + ..
-
[백준 2630] 색종이 만들기C 프로그래밍/BOJ 2022. 8. 18. 21:11
https://www.acmicpc.net/problem/2630 2630번: 색종이 만들기 첫째 줄에는 전체 종이의 한 변의 길이 N이 주어져 있다. N은 2, 4, 8, 16, 32, 64, 128 중 하나이다. 색종이의 각 가로줄의 정사각형칸들의 색이 윗줄부터 차례로 둘째 줄부터 마지막 줄까지 주어진다. www.acmicpc.net #include int n; int paper[128 + 10][128 + 10]; int w_cnt, b_cnt; void input(void) { scanf("%d", &n); for (int i = 0; i < n; i++) { for (int j = 0; j < n; j++) { scanf("%d", &paper[i][j]); } } } void cut_paper..
-
[정올 1057] 미친 수열C 프로그래밍/BOJ 2022. 8. 18. 20:09
http://jungol.co.kr/bbs/board.php?bo_table=pbank&code=1057&sca=99 JUNGOL www.jungol.co.kr #include #include long long int n; void get_ans(void) { long long ans = (long long)(-1 + sqrt(1.0 + 8 * n)) / 2;//근의 공식 if ((ans * (ans + 1) / 2) < n) printf("%lld", ans + 1);//출력 시 타입 주의 else printf("%lld", ans); } int main(void) { scanf("%lld", &n);//input시 타입 주의 get_ans(); return 0; } 다시 풀어도 그지같은 문제라고 할 ..
-
[사설] 3이 없는 나라C 프로그래밍/BOJ 2022. 8. 18. 19:35
http://www.judgeon.net/problem.php?cid=1621&pid=4 Judgeon 어떤 동화 속 나라의 왕은 숫자 3을 싫어해서 수의 체계에서 3이라는 숫자를 사용하지 않는다. 백성들도 숫자 3은 혐오의 뜻으로 받아 들여 숫자 3을 절대 사용하지 않는다. 이 나라의 숫자는 0, 1, www.judgeon.net #include #include int n; int ans; void to_deci(void) { for (int i = 0;;) { if (n == 0) break; int tmp = n % 10; if (tmp < 3) ans += tmp * pow(9, i); else ans += (tmp - 1) * pow(9, i);//3이 쓰이지 않았으므로 한 칸씩 당긴다 n /=..