?? 1241.cpp
字號:
/* This Code is Submitted by wywcgs for Problem 1241 on 2005-09-30 at 13:30:38 */
#include <cstdio>
class BigInt {
public:
long num[800];
BigInt() {
int i;
for(i = 0; i < 800; i++) {
num[i] = 0;
}
num[0] = 1;
}
void muti(int a) {
int i;
for(i = 0; i < 800; i++) {
num[i] *= a;
}
for(i = 0; i < 780; i++) {
num[i+1] += num[i] / 10;
num[i] %= 10;
}
}
void stat(int *s) {
int i;
bool haveNum = false;
for(i = 799; i >= 0; i--) {
if(num[i] == 0) {
if(haveNum) {
s[0]++;
}
} else {
s[num[i]]++;
haveNum = true;
}
}
}
};
int main()
{
int st[370][10] = {{0}};
BigInt *bi = new BigInt;
int i, j, n;
for(i = 1; i <= 366; i++) {
bi->stat(st[i]);
bi->muti(i+1);
}
while(scanf("%d", &n) == 1) {
if(n == 0) {
return 0;
} else {
printf("%d! --\n", n);
for(j = 0; j < 10; j++) {
printf(" (%d)%5d", j, st[n][j]);
if(j == 4 || j == 9) {
putchar('\n');
} else {
putchar(' ');
}
}
}
}
return 0;
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -