백준 - 1차원 배열
2022. 11. 12. 12:21ㆍ백준 - C
728x90
백준의 1차원 배열 문제들을 C로 풀이한 것입니다.
1. 개수 세기
문제 해결 코드는 다음과 같습니다.
#include <stdio.h>
int main(void){
int i, n, find, cnt = 0;
int num[100];
scanf("%d", &n);
for(i = 0; i < n; i++){
scanf("%d", &num[i]);
}
scanf("%d", &find);
for(i = 0; i < n; i++){
if(num[i] == find){
cnt++;
}
}
printf("%d", cnt);
return 0;
}
2. x 보다 작은 수
문제 해결 코드는 다음과 같습니다.
#include <stdio.h>
int main(void){
int i, n, x;
int a[10000];
scanf("%d %d", &n, &x);
for(i = 0; i < n; i++){
scanf("%d", &a[i]);
}
for(i = 0; i < n; i++){
if(a[i] < x){
printf("%d ", a[i]);
}
}
return 0;
}
3. 최소, 최대
문제 해결 코드는 다음과 같습니다.
#include <stdio.h>
int main(void){
int i, n, max = -1000000, min = 1000000;
int a[1000000];
scanf("%d", &n);
for(i = 0; i < n; i++){
scanf("%d", &a[i]);
}
for(i = 0; i < n; i++){
if(a[i] > max){
max = a[i];
}
if(a[i] < min){
min = a[i];
}
}
printf("%d %d\n", min, max);
return 0;
}
4. 최댓값
문제 해결 코드는 다음과 같습니다.
#include <stdio.h>
int main(void){
int a[9];
int i, max = 0, max_index;
for(i = 0; i < 9; i++){
scanf("%d", &a[i]);
}
for(i = 0; i < 9; i++){
if(a[i] > max){
max = a[i];
max_index = i + 1;
}
}
printf("%d\n%d\n", max, max_index);
return 0;
}
5. 과제 안 내신 분...?
문제 해결 코드는 다음과 같습니다.
#include <stdio.h>
int main(void){
int human, homework[30] = { 0 };
int i;
for(i = 0; i < 28; i++){
scanf("%d", &human);
homework[human - 1] = 1;
}
for(i = 0; i < 30; i++){
if(homework[i] != 1){
printf("%d\n", i + 1);
}
}
return 0;
}
6. 나머지
문제 해결 코드는 다음과 같습니다.
#include <stdio.h>
int main(void){
int i, num, cnt = 0;
int na[10], na_state[42] = { 0 };
for(i = 0; i < 10; i++){
scanf("%d", &num);
na[i] = num % 42;
}
for(i = 0; i < 10; i++){
if(na_state[na[i]] == 0){
cnt++;
na_state[na[i]] = 1;
continue;
}
}
printf("%d", cnt);
return 0;
}
7. 평균
문제 해결 코드는 다음과 같습니다.
#include <stdio.h>
int main(void){
int n, i;
float score[1000];
float max = 0, sum = 0;
scanf("%d", &n);
for(i = 0; i < n; i++){
scanf("%f", &score[i]);
}
for(i = 0; i < n; i++){
if(score[i] > max){
max = score[i];
}
}
for(i = 0; i < n; i++){
score[i] = score[i] / max * 100;
sum += score[i];
}
printf("%f", sum / n);
return 0;
}
8. OX퀴즈
문제 해결 코드는 다음과 같습니다.
#include <stdio.h>
int main(void){
int n, i, j, plus, score;
char ox[80];
scanf("%d", &n);
for(i = 0; i < n; i++){
scanf("%s", ox);
j = 0;
plus = 1;
score = 0;
while(ox[j] != '\0'){
if(ox[j] == 'O'){
score += plus;
plus++;
}
else{
plus = 1;
}
j++;
}
printf("%d\n", score);
}
return 0;
}
9. 평균은 넘겠지
문제 해결 코드는 다음과 같습니다.
#include <stdio.h>
int main(void){
int c, i, j;
float n, score[1000];
float avg, sum, count;
scanf("%d", &c);
for(i = 0; i < c; i++){
scanf("%f", &n);
sum = 0;
count = 0;
for(j = 0; j < n; j++){
scanf("%f", &score[j]);
sum += score[j];
}
avg = sum / n;
for(j = 0; j < n; j++){
if(score[j] > avg){
count++;
}
}
printf("%.3f%%\n", count / n * 100);
}
return 0;
}
728x90
'백준 - C' 카테고리의 다른 글
백준 - 반복문 (0) | 2022.11.12 |
---|---|
백준 - 2차원 배열 (0) | 2022.11.12 |
백준 - 주사위 세개 (0) | 2022.10.28 |
백준 - 오븐 시계 (0) | 2022.10.28 |
백준 - 알람 시계 (0) | 2022.10.28 |