noipXX普及组解题报告.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
noipXX普及组解题报告   NOIPXX普及组解题报告   From贴吧idu007zzt   金币   国王将金币作为工资,发放给忠诚的骑士。   第一天骑士收到一枚金币;之后两天,每天收到两枚金币;之后三天,每天收到三枚金币;之后四天,每天收到四枚金币,以此类推;这种工资发放模式会一直延续下去,当连续N天收到N枚金币后,骑士会在之后的N+1天,每天收到N+1枚金币。   请计算前K天里,骑士一共获得了多少金币。   输入格式   输入包含一个正整数K,表示发放金币的天数。   输出格式   输出一个正整数,即骑士收到的金币数。   样例1   样例输入1   6   样例输出1   14   样例2   样例输入2   1000   样例输出2   29820   对于全部数据,1≤K≤10000。   这种题目,简直就属于水题狂做的那种。不多说,附C++代码。   #include   intk,ans=0;   intmain(){   freopen(,r,stdin);   freopen(,w,stdout);   scanf(%d,k);   inti=1;   while(k){   if(k=i){   ans+=i*i;   k-=i;   }else{   ans+=k*i;   k=0;   }   i++;   }   printf(%d\n,ans);   return0;   }   扫雷游戏   扫雷游戏是一款十分经典的单机小游戏。   在n行m列的雷区中有一些格子含有地雷,其他格子不含地雷。   玩家翻开一个非地雷格时,该格将会出现一个数字——提示周围格子中有多少个是地雷格。   游戏的目标是在不翻出任何地雷格的条件下,找出所有的非地雷格。   现在给出n行m列的雷区中的地雷分布,要求计算出每个非地雷格周围的地雷格数。   注:一个格子的周围格子包括其上、下、左、右、左上、左下、右上、右下八个方向上与之直接相邻的格子。   输入格式   第一行用一个空格隔开的两个整数n和m,分别表示雷区的行数和列数。接下来n行,每行m个字符,描述了雷区中的地雷分布情况。字符?表示相应的格子是地雷格,字符(?)`表示相应的格子是非地雷格子。相邻字符之间无分隔符。   输出格式   输出文件包括n行,每行m个字符,描述了整个雷区。用?表示地雷格,用周围地雷格数表示非地雷格。相邻字符之间无分隔符。   样例1   样例输入1   33   *??   ???   ?*?   样例输出1   *10   221   1*1   样例2   样例输入2   23   ?*?   *??   样例输出2   2*1   *21   对于所有的数据,1≤n≤100,1≤m≤100。   又是水题一道,请允许我吐槽一下pj组的难度……别的没什么,注意字符的读入。附C++代码。   #include   usingnamespacestd;   intmatrix[105][105];   charstr[105];   intdir[3]={0,1,-1};   intn,m;   intmain(){   freopen(,r,stdin);   freopen(,w,stdout);   scanf(%d%d,n,m);   inti,j,k,t;   for(i=1;i   intn,m,i,j,x,y,a[55][55];   intmain(){   scanf(%d,n);m=n*n;x=1;y=(n+1)/2;a[x][y]=1;   for(i=2;i   #include   #defineN   usingnamespacestd;   intn,i,tm,tp,now,ans,sz,to[N],dfn[N],low[N],st[N];boolis[N];   voiddfs(intx){   dfn[x]=low[x]=++tm;st[++tp]=x;is[x]=1;   inty=to[x];   if(!dfn[y])dfs(y),low[x]=min(low[x],low[y]);   elseif(is[y])low[x]=min(low[x],dfn[y]);   if(low[x]==dfn[x]){   for(sz=now=0;now!=x;)now=st[tp--],sz++;   if(sz1)ans=min(ans,sz);   }   }   intmain(){   for(ans=1e9,scanf(%d,n),i=1;i   #include   #include   #definemxh   usingnamespacestd;   intans,T,n,i,x

文档评论(0)

a888118a + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档