2 qq 37242775 qq_37242775 于 2017.01.03 20:17 提问

求北大ACM3428题题解!!!!!!!!!!!! 20C

#include

#include

#include

#include

using namespace std;

char format[50050], // format string

argument[1001][50050];

bool isDigit(char c)

{

return '0'<=c && c<='9';

}

bool judgeInt( char args[])

{

if(args[0]=='\0' || args[0]=='\n' )

return false;

for( int i=0;args[i] && args[i]!='\n' ;i++)

if( isDigit(args[i])==false) return false;

return true;

}

int calPara( char format[] )

{

int k = 0;

for( int i=0; format[i] && format[i]!='\n' ;i++){

if( format[i]=='%' ){

i++;

if( format[i]=='d' && judgeInt(argument[k])) k++;

else if( format[i]=='s' ) k++;

else if( format[i]=='%' ) continue;

else return -1;

}

}

return k;

}

void printInt(char args[])

{

int idx = 0;

while( args[idx]=='0' ) idx++;

if( args[idx]=='\n' || args[idx]=='\0' ){

putchar('0');

return ;

}

while( args[idx] && args[idx]!='\n' ) putchar(args[idx++]);

}

void printStr(char args[])

{

for( int i=0;args[i] && args[i]!='\n' ;i++)

putchar( args[i] );

}

void output(char format[],char args[][50050])

{

int k = 0;

for( int i=0; format[i] && format[i]!='\n' ;i++){

if( format[i]=='%' ){

i++;

if( format[i]=='d' ) printInt(argument[k++]);

else if( format[i]=='s' ) printStr(argument[k++]);

else if( format[i]=='%' ) putchar('%');

}

else putchar( format[i] );

}

}

int main(int argc, const char *argv[])

{

gets(format);

int nPara = 0;  
while(gets(argument[nPara]))  nPara++;  

if( calPara(format) != nPara )  printf("%s","ERROR");  
else    output(format,argument);      

return 0;  

}

要怎么输入才有输出。求

如果可以给出北大ACM
1076
1246
1372
1626
2016
2884
3289
3424
3428
3571
3575
3582
3583
3584
任意一题的题解就给悬赏!!谢谢各位大神。跪求!

2个回答

caozhy
caozhy   Ds   Rxr 2017.01.03 22:30
sinat_35134348
sinat_35134348   2017.01.04 11:01

Bessie is playing a card game with her N-1 (2 ≤ N ≤ 100) cow friends using a deck with K (N ≤ K ≤ 100,000; K is a multiple of N) cards. The deck contains M = K/N "good" cards and K-M "bad" cards. Bessie is the dealer and, naturally, wants to deal herself all of the "good" cards. She loves winning.

Her friends suspect that she will cheat, though, so they devise a dealing system in an attempt to prevent Bessie from cheating. They tell her to deal as follows:

  1. Start by dealing the card on the top of the deck to the cow to her right

  2. Every time she deals a card, she must place the next P (1 ≤ P ≤ 10) cards on the bottom of the deck; and

  3. Continue dealing in this manner to each player sequentially in a counterclockwise manner

Bessie, desperate to win, asks you to help her figure out where she should put the "good" cards so that she gets all of them. Notationally, the top card is card #1, next card is #2, and so on.

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
北大acm1001题解题报告
求高精度幂 Time Limit: 500MS   Memory Limit: 10000K Total Submissions: 120823   Accepted: 29507 Description 对数值很大、精度很高的数进行高精度计算是一类十分常见的问题。比如,对国债进行计算就是属于这类问题。  现在要你解决的问题是:
北大OJ_1001题:求正数的高精度幂
程序说明 程序效率不高,时间复杂度为O(n^2),有待进一步的优化,呵呵    程序代码 #include #include #include using namespace std; //求两个大数的乘积(两数均为正数) string GetProductOfTwoBigNum( string strNumLeft, string strNumRight ) { ///
1001_北大oj题目理解学习
题目:输入一序列的正实数和幂次,然后打印结果 这道题是关于大数计算的(大数求幂) 自己用了最简单的方法,运行后告诉我结果是inf 然后不能准确的计算数据的大小 看了网上的解答后,才明白要考虑很多 有两种解答方法,一种是java,一种是C++ 下面先学习java方法:import java.io.*; import java.util.*; import java.math.BigDeci
【牛客网】2018年北京信息科技大学第十届程序设计竞赛暨ACM选拔赛 全题解
2018年北京信息科技大学第十届程序设计竞赛暨ACM选拔赛 因为是新生选拔赛所以题目总体不难,但是不乏坑题(数学题和物理题)题目都是中文题,只要题目没有歧义我基本只会讲解法。本题解包括所有题目 APUBG Bprecise math function C颜料的混合 D打篮球 E233 F扫雷 G火车上的2连座 H程序员的好印象 I郊游 J过河
poj经典动态规划题目解题报告
poj经典动态规划题目解题报告,包括经典的动态规划题目20多道,可以作为学习动态规划系统的资料,包括题目:<br>Pku acm 1179 Polygon<br>Pku acm 1125 Stockbroker Grapevine<br>Pku acm 1160 post office<br>Pku acm 1014 Dividing<br>Pku acm 1050 To the Max<br>Pku acm 1088 滑雪<br>Pku acm 2533 Longest Ordered Subsequence<br>Pku acm 1631 Bridging signals<br>Pku acm 1887 Testing the CATCHER <br>Pku acm 3356 AGTC<br>Pku acm 2192 Zipper<br>Pku acm 1080 Humman Gene Function <br>Pku acm 1159 Palindrome <br>Pku acm 2250 Compromise <br>Pku acm 1458 Common Subsequence <br>Pku acm 1953 World Cup Noise <br>Pku acm 2081 Recaman's Sequence<br>Pku acm 1579 Function Run Fun <br>Pku acm 1157 LITTLE SHOP OF FLOWERS<br>Pku acm 1163 the Triangle
poj 2485 Highways 超级大水题 kruscal
rt,超级大水题,连邻接矩阵都给出来了,求最小生成树的最大边。。。 继续用kruscal切掉。。。 代码: #include #include using namespace std; const int maxn = 500; struct Edge{ int x, y, w; }; Edge e[maxn*maxn]; int f[maxn]; int v[maxn][maxn]
北大ACM校内赛解题报告
今天去打酱油的。。。水了四道题,给各种IOI、ACM Final的大神跪。。。
poj解题报告——2313
开始假设b[i] = a[i](1 Mid(b[i - 1], a[i], b[i + 1]) (2 <= i <= n - 1), mid(x, y, z)表示x, y, z中数值居中间的数}这个画下数轴就知道了,则b[i]=mid(b[i - 1], a[i], b[i + 1]),直到没有以上所说的i,所得的b数列即为所求,按公式求sum, 输出。 #include #inclu
POJ 1363 解题报告
这道题不难但是题目很难理解。看了测试样例才明白,如果入栈顺序是递增的:1,2,3,4,5. 那么给出一个出栈顺序,比如5,4,1,2,3,判断这个出栈顺序是否可能。 我这里就是按照题意模拟的。比如碰到5,就将小于等于5的都入栈(1,2,3,4,5),然是将5出栈(判断这时栈顶一定是5),同样地,之后遇到4,已经没有什么可入栈了,栈顶是4,出栈,再遇到1,同样没什么可入栈的,栈顶元素是3,不是1,
北大acm题解北大acm题解acm北大acm题解acm
北大acm题解acm北大acm题解acm北大acm题解acm