-
[SISS/C언어 스터디] 여름 7주차 스터디24-여름 SISS/C언어 2024. 8. 17. 20:00
여름 7주차 스터디 백준 제출 내역 화면 캡쳐 자율 2문제를 풀어서 제출하면 됩니다.
언어는 C언어만 가능합니다.
레벨 제한사항: Bronze 3 이상
11659
- 누적 합 → 각각의 인덱스까지의 합을 구하여 저장한 후, 구간 별 합은 시작 인덱스-1 까지의 합을 빼 구함
// 11659.c #include <stdio.h> int main() { // 문제의 입력 범위를 참고하여 배열 크기 설정 int n, m; int arr[100001]; int sum[100001] = { 0, }; // 수의 개수(n)와 구해야할 합의 개수(m) scanf("%d %d", &n, &m); // 수열을 입력받으며 각각의 인덱스까지의 누적합을 저장 for (int i = 1; i <= n; i++) { scanf("%d", &arr[i]); sum[i] = sum[i - 1] + arr[i]; } // 구해야하는 구간 별 합을 차를 이용하여 계산 for (int i = 0; i < m; i++) { int a, b; scanf("%d %d", &a, &b); printf("%d\n", sum[b] - sum[a - 1]); } return 0; }
1065
- 브루트포스 → 입력 수의 범위가 1000 미만이므로 일의 자리와 십의 자리, 십의 자리와 백의 자리 수의 차를 구하여 같은지 여부를 통해 등차수열임을 확인할 수 있음
// 1065.c #include <stdio.h> int main() { int n; int cnt = 0; // 최대 범위 입력 scanf("%d", &n); for (int i = 1; i <= n; i++) { // 100보다 작은 경우는 모두 등차수열 if (i < 100) { cnt++; } // 1000보다 작은 수이므로 일의 자리와 십의자리, 십의 자리와 백의 자리 수의 차가 같으면 등차수열 else { int a = i / 100; int b = (i % 100) / 10; int c = i % 10; if (a - b == b - c) { cnt++; } } } printf("%d", cnt); return 0; }
'24-여름 SISS > C언어' 카테고리의 다른 글
[SISS/C언어 스터디] 여름 8주차 스터디 (0) 2024.08.24 [SISS/C언어 스터디] 여름 6주차 스터디 (0) 2024.08.11 [SISS/C언어 스터디] 여름 5주차 스터디 (0) 2024.08.04