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 |
Re:输出别忘记补零--测试数据In Reply To:输出别忘记补零--测试数据 Posted by:lengshu at 2011-09-29 10:28:31 > include <stdio.h> > #include <memory> > > #define DEF_MAX_LEN 2000 > #define DEF_MAX_TIME 100 > #define DEF_BIT_LEN 9 > unsigned int nMax = 1000000000; > unsigned int nArray[3][DEF_MAX_LEN]; > > void ProcessAdd(int nPoint, int &nLenth) > { > int nAnother1 = (nPoint + 1) % 3; > int nAnother2 = (nPoint + 2) % 3; > int nEnterOne = 0; > for (int i = 0; i < nLenth; i++) > { > nArray[nPoint][i] += nArray[nAnother1][i] + nArray[nAnother2][i] + nEnterOne ; > nEnterOne = 0; > if (nArray[nPoint][i] >= nMax) > { > nEnterOne += nArray[nPoint][i] / nMax; > nArray[nPoint][i] %= nMax; > } > } > if (nEnterOne > 0) > { > nArray[nPoint][nLenth] = nEnterOne; > nLenth++; > } > } > int main(int argc, char* argv[]) > { > memset(nArray, 0, 3 * DEF_MAX_LEN * sizeof(unsigned int)); > while(scanf("%u %u %u", &nArray[0][0], &nArray[1][0], &nArray[2][0]) != EOF) > { > int nCount = 3; > int nPoint = -1; > int nLength = 1; > for (; nCount < DEF_MAX_TIME; nCount++) > { > nPoint = (nPoint + 1) % 3; > ProcessAdd(nPoint, nLength); > } > > printf("%u", nArray[nPoint][nLength - 1]); > for (int nPos = nLength - 2; nPos >= 0; nPos--) > { > unsigned nMark = 1; > int nLen = 0; > for (; nLen < DEF_BIT_LEN; nLen++) > { > if (nArray[nPoint][nPos] / nMark == 0) > break; > nMark *= 10; > } > for (int nZero = DEF_BIT_LEN; nZero > nLen; nZero--) > printf("0"); > printf("%u", nArray[nPoint][nPos]); > } > printf("\n"); > memset(nArray, 0, 3 * DEF_MAX_LEN * sizeof(unsigned int)); > } > return 0; > } > 测试数据: > 0 0 0 > 0 > 1 1 1 > 69087442470169316923566147 > 2 2 2 > 138174884940338633847132294 > 3 3 3 > 207262327410507950770698441 > 4 4 4 > 276349769880677267694264588 > 5 6 7 > 427754062987361451295487810 > 9 9 9 > 621786982231523852312095323 > 111 111 111 > 7668706114188794178515842317 > 234 455 566 > 31169355880763566758453906103 > 0 1 0 > 24332675219681431451788241 > 0 0 1 > 28992087708416717612934417 > 1 1 0 > 40095354761752599310631730 谢谢你的测试数据了.... Followed by: Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator