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));
}

djm03178   6년 전

1이 5가 나오는데요.

댓글을 작성하려면 로그인해야 합니다.