int num, fnum; int x = 100000; scanf_s("%d", &num); if (num >= 1000000 || num < 0) error("잘못 된 수");
for (int i = 0; i < 6; i++, x/=10 ) { fnum = num / x; if (num > x || num == 1) torf(fnum, countArray); num = num - (fnum * x); } /*for (int i = 0; i < MAX; i++) printf("%d\n", countArray[i]); printf("\n");*/ printf("%d\n", bigN(countArray)); }
shw8581 6년 전
비쥬얼에서는 다 맞게 나오는거 같은데 ㅠㅠ
#include<stdio.h>
#include<stdlib.h>
#define MAX 10
int count = 0;
int countArray[10] = { 0,0,0,0,0,0,0,0,0,0 };
void error(char *message) {
fprintf(stderr, "%s\n", message);
}
void torf(int num1, int array1[]) {
if (num1 >= 0 && num1 <= 9) {
array1[num1]++;
}
}
int bigN(int array1[]){
int bigNum = array1[0];
for (int i = 1; i < MAX; i++) {
if (i == 9) {
if(array1[6]+array1[9] %2 == 1)
bigNum = bigNum >= ((array1[i]+array1[6]) / 2 + 1) ? bigNum : ((array1[i] + array1[6]) / 2 + 1);
else
bigNum = bigNum >= ((array1[i] + array1[6]) / 2 ) ? bigNum : ((array1[i] + array1[6]) / 2 );
continue;
}
bigNum =bigNum >= array1[i] ? bigNum : array1[i];
//printf("bignum =? %d\n", bigNum);
}
return bigNum;
}
int main(void) {
int num, fnum;
int x = 100000;
scanf_s("%d", &num);
if (num >= 1000000 || num < 0)
error("잘못 된 수");
for (int i = 0; i < 6; i++, x/=10 ) {
fnum = num / x;
if (num > x || num == 1)
torf(fnum, countArray);
num = num - (fnum * x);
}
/*for (int i = 0; i < MAX; i++)
printf("%d\n", countArray[i]);
printf("\n");*/
printf("%d\n", bigN(countArray));
}