| ||||||||||
| Online Judge | Problem Set | Authors | Online Contests | User | ||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest | |||||||||
你这个1 1 1的数据测试就不行了,我是0 0 0,1 1 1都测试成功,提交还WAIn Reply To:为什么错了呢。。sample 无头绪 有数据么。。 Posted by:luxury2664 at 2010-11-26 20:14:30 > #include <stdio.h>
> #include <iostream>
>
> using namespace std;
>
> int num[4][88];
>
> int max(int a, int b, int c)
> {
> int max_abc = a;
>
> if (max_abc > b)
> max_abc = b;
> if (max_abc > c)
> max_abc = c;
>
> return max_abc;
> }
>
> void caculate(int i, int j)
> {
> int l, k;
>
> l = max(num[j][0], num[(j + 1) % 4][0], num[(j + 2) % 4][0]);
>
> for (k = l; k >= 0; k--) {
> num[i][k] = 0;
> }
>
> for (k = 1; k < l + 3; k++){
> num[i][k] += num[j][k] + num[(j + 1) % 4][k] + num[(j + 2) % 4][k];
> while (num[i][k] >= 10) {
> num[i][k] -= 10;
> num[i][k + 1]++;
> }
> }
> l += 3;
> while (num[i][l] == 0 )
> l--;
> num[i][0] = l;
> }
>
> int main()
> {
> int a, b, c, i;
> while (scanf("%d%d%d", &a, &b, &c) != EOF) {
> if (a == 0 && b == 0 && c == 0) {
> printf("0\n");
> continue;
> }
> for (i = 0; i < 88; i++) {
> num[0][i] = 0;
> num[1][i] = 0;
> num[2][i] = 0;
> num[3][i] = 0;
> }
>
> i = 1;
> while (a > 0) {
> num[0][i++] = a % 10;
> a /= 10;
> }
> num[0][0] = i;
> i = 1;
> while (b > 0) {
> num[1][i++] = b % 10;
> b /= 10;
> }
> num[1][0] = i;
> i = 1;
> while (c > 0) {
> num[2][i++] = c % 10;
> c /= 10;
> }
> num[2][0] = i;
> for (i = 3; i < 100; i++) {
> caculate(i % 4, (i - 3 ) % 4);
> }
> for (i = num[3][0]; i > 0; i--) {
> printf("%d", num[3][i]);
> }
> printf("\n");
> }
> return 0;
> }
Followed by: Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator