蓝桥杯高级算法编程实现答题.docVIP

  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文档。上传文档
查看更多
注意:全局变量不要在函数中再次定义; 全局变量的一个优点:减少函数间的传递参数,特别是数组 do...while语句联合cin.get()实现动态数据的输入 问题描述   有n(2≤n≤20)块芯片,有好有坏,已知好芯片比坏芯片多。   每个芯片都能用来测试其他芯片。用好芯片测试其他芯片时,能正确给出被测试芯片是好还是坏。而用坏芯片测试其他芯片时,会随机给出好或是坏的测试结果(即此结果与被测试芯片实际的好坏无关)。   给出所有芯片的测试结果,问哪些芯片是好芯片。 输入格式   输入数据第一行为一个整数n,表示芯片个数。   第二行到第n+1行为n*n的一张表,每行n个数据。表中的每个数据为0或1,在这n行中的第i行第j列(1≤i, j≤n)的数据表示用第i块芯片测试第j块芯片时得到的测试结果,1表示好,0表示坏,i=j时一律为1(并不表示该芯片对本身的测试结果。芯片不能对本身进行测试)。 输出格式   按从小到大的顺序输出所有好芯片的编号 样例输入 3 1 0 1 0 1 0 1 0 1 样例输出 1 3 程序(利用排除法) #includeiostream #includestring #includemath.h using namespace std; int isgood(int pos); int a[20][20]; int p[20]; int n; int main() { int i,j;//2≤n≤20; cinn; for (i=0;in;i++) { p[i]=1; for (j=0;jn;j++) cina[i][j]; } for (i=0;in;i++) { if(isgood(i+1)==0) p[i]=0; } for (i=0;i(n-1);i++) { if(p[i]!=0) couti+1 ; } couti+1endl; return 0; } int isgood(int pos) { //由于对角线元素无法对零件好坏的识别提供参考依据,所以每次循环都必须把i=j,或者pos-1=i的情况排除掉; int i,j,s=0; //好的零件数量必须大于坏的,否者说明pos判断失误 for (i=0;in;i++) { s+=a[pos-1][i]; } if (2*s=n) return 0; //除了主对角线以外的函数,如果pos判断i是好的,但是i却判断pos是坏的,说明判断失误 for (i=0;in;i++) { if(a[pos-1][i]==1i!=(pos-1)a[i][pos-1]==0) { return 0; } } //在对角线以外,如果pos判断了i是正确的,那么i对其他零件的判断必须与pos相同,否者说明判断失误 for (i=0;in;i++) { if(a[pos-1][i]==1i!=(pos-1)) { for (j=0;jn;j++) { if (i!=jj!=(pos-1)a[i][j]!=a[pos-1][j]) return 0; } } //如果i已经被确定为坏的,但是pos却将其判断为好的,说明判断失误 } for (i=0;in;i++) { if(p[i]==0a[pos-1][i]==1i!=(pos-1)) { return 0; } } return pos; } 问题描述   最近FJ为他的奶牛们开设了数学分析课,FJ知道若要学好这门课,必须有一个好的三角函数基本功。所以他准备和奶牛们做一个“Sine之舞”的游戏,寓教于乐,提高奶牛们的计算能力。   不妨设   An=sin(1–sin(2+sin(3–sin(4+...sin(n))...)   Sn=(...(A1+n)A2+n-1)A3+...+2)An+1   FJ想让奶牛们计算Sn的值,请你帮助FJ打印出Sn的完整表达式,以方便奶牛们做题。 输入格式   仅有一个数:N201。 输出格式   请输出相应的表达式Sn,以一个换行符结束。输出中不得含有多余的空格或换行、回车符。 样例输入 3 样例输出 ((sin(1)+3)sin(1–sin(2))+2)sin(1–sin(2+sin(3)))+1 程序: #includeiostream #include sstream #includestdlib.h #includestring #includemath.h using namespace std; string num2str(double i) { stri

文档评论(0)

挑战不可能 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档