当前位置: 首页 > news >正文

提供网站建设工具招聘网站制作公司

提供网站建设工具,招聘网站制作公司,如何清空网站空间,工商红盾网查询系统题目是输入一个数字#xff0c;分解成三个数字的和#xff0c;这三个数字都不相同#xff0c;并且都不可以被三整除#xff0c;如果存在输出YES并且输出任意一组可能的三个数字#xff0c;否则输出NO 代码 #includebits/stdc.h using namespace std;int main() …题目是输入一个数字分解成三个数字的和这三个数字都不相同并且都不可以被三整除如果存在输出YES并且输出任意一组可能的三个数字否则输出NO 代码 #includebits/stdc.h using namespace std;int main() {int t;scanf(%d,t);while(t--){int x,y,z;int n;bool flagfalse;scanf(%d,n);for(x1;x10;x){for(yx1;y10;y){zn-x-y;if(x%3!0y%3!0z%3!0zy){printf(YES\n%d %d %d\n,x,y,z);flagtrue;break;}}if(flagtrue) break;}if(!flag) printf(NO\n);}return 0; } 循环让第二个数字y等于x1就可以保证最开始两个数字就不相等还是这种方法最明了直接条件判断  赛时代码 #includebits/stdc.h using namespace std;int ans[5];int main() {int t;scanf(%d,t);while(t--){int n;bool flagfalse;scanf(%d,n);int tempn/3;if(n%30){if(temp%3!0){ans[0]temp-1,ans[1]temp,ans[2]temp1;while((ans[0]%30||ans[2]%30)ans[0]0){ans[0]-1;ans[2]1;}}else{ans[0]temp,ans[1]temp-1,ans[2]temp1;while((ans[0]%30||ans[2]%30||ans[0]ans[1])ans[0]0){ans[0]-1;ans[2]1;}}if(ans[0]ans[1]ans[2]nans[0]%3!0ans[2]%3!0ans[1]%3!0ans[0]!ans[1]ans[0]!ans[2]ans[1]!ans[2]) flagtrue;}else{int qn%3;ans[0]temp,ans[1]temp,ans[2]tempq;if(temp%3!0){ans[0]temp,ans[1]temp,ans[2]tempq;while((ans[0]%30||ans[2]%30||ans[0]ans[1])ans[0]0){ans[0]-1;ans[2]1;}}else{ans[0]temp-1,ans[1]temp1,ans[2]tempq;while((ans[0]%30||ans[2]%30||ans[0]ans[1]||ans[1]ans[2])ans[0]0){ans[0]-1;ans[2]1;}}if(ans[0]ans[1]ans[2]nans[0]%3!0ans[2]%3!0ans[1]%3!0ans[0]!ans[1]ans[0]!ans[2]ans[1]!ans[2]) flagtrue;}if(n3) flagfalse;if(flagtrue) {printf(YES\n);printf(%d %d %d\n,ans[0],ans[1],ans[2]);}else printf(NO\n);}return 0; } 标签是暴力破解构造算法数学 仔细想了一下确实暴力就可以直接过 我比赛的时候想的方法确实比较繁琐哈哈 讨论输入的数字n是否能够被3整除把数字n除以3然后把这三个数字放在ans[0],ans[1],ans[2]里面保证中间的位置满足不被3整除然后调整ans[0],ans[2]这两个数字ans[0]--,ans[2],一个因子减少一另一个因子增加一和n保持不变所以可以满足条件也可以寻找到答案 另外一种解法 #includebits/stdc.h using namespace std;int main() {int t;scanf(%d,t);while(t--){int n;scanf(%d,n);if(n%30){int zn-5;if(z%3!0z4) printf(YES\n1 4 %d\n,z);else printf(NO\n);}else{int ansn-3;if(ans%3!0ans2) printf(YES\n1 2 %d\n,ans);else printf(NO\n);}}return 0; } 上面这种做法是找规律我们只需要输出一种符合条件的情况即可所以我们考虑一些特殊的数字比如说1和2这两个数字不相同并且两个数字的和是3如果数字n是可以被3整除的并且大于3的话如果是3的话剩下的那个数字只可以是0不符合条件剩下的那个数字就一定可以被3整除但是如果n不可以被3整除剩下的那个数也不可以被3整除如果可以被3整除的话n就可以被3整除了 有点绕 分两种特殊情况来考虑第一种特殊情况取x1,y2,这个时候假设n是不能被3整除的数字剩下的那个数字我们记为zz一定是不能被3整除的因为假设z可以被3整除加上3还是可以被3整除加上3就等于n了和假设矛盾所以z一定不能被3整除反证法注意需要满足z大于2这个条件 第二种情况就是取x1,y4,考虑n可以被3整除剩下的数字z一定是不可以被3整除的证明如下还是反证法就是假设z是可以被3整除的假设z3b,n3k,那么有53b3k移向可以得到5/3k-b两个整数的差不可能是小数所以矛盾所以z一定是不可以被3整除的 #includebits/stdc.h using namespace std;int main() {int t;scanf(%d,t);while(t--){int n;scanf(%d,n);if(n%30){int zn-5;if(z4) printf(YES\n1 4 %d\n,z);else printf(NO\n);}else{int ansn-3;if(ans2) printf(YES\n1 2 %d\n,ans);else printf(NO\n);}}return 0; } 经过一通分析之后发现这样子其实更加简洁但是前期需要分析的更多一些
http://www.sadfv.cn/news/401816/

相关文章:

  • 合肥论坛网站建设网站建设方案书1500字
  • 保定网站建设制作开发平台淘宝官网首页电脑版登录
  • 个人网站怎么做有创意网站域名到期怎么续费
  • 哪个网站可以免费设计房子没有企业邮箱怎么填写
  • 网站联盟广告名词解释长沙企业网站建设团队
  • 做网站开发钱wordpress 分类目录使用英文
  • 佛山网站常见的问题衡水php网站建设
  • 企业静态网站需要备案吗iis7 安装 wordpress
  • 公司域名注册网站哪个好九福在线代理网页
  • 静态网站可以申请域名吗小程序appid
  • 网站 关键字autocad二次开发
  • 制定企业网站营销推广战略wordpress伪静态老是显示首页
  • 城乡住房建设部网站造价师网刷关键词排名系统
  • 网站建设 中企动力医院广州公司网站设计
  • 南京网站设计公司济南兴田德润优惠吗新增接入 新增网站
  • 昆明网站做wordpress上传图片错误媒体库错误
  • 专业网站设计百度网址大全导航首页
  • 网站建设及管理制度wordpress访问很慢吗
  • 建设通网站查海南人才网
  • 百度云官方网站高臣网站建设公司
  • 深圳建站程序没有微信怎么进入公众号
  • 丹灶网站制作南京刚刚发生的大事
  • 网站建设招商阿里云建站中级版和高级版
  • 义乌建站东莞路桥投资建设公司待遇
  • 美发网站怎么做做网站新乡
  • 网站建设开发流程网站建设项目团队组织结构图
  • 网站开发的课程设置网络水果有哪些网站可以做
  • .design 域名的网站网站建设定义
  • 博罗营销网站制作网络优化的基本方法
  • 建设网站观澜焊枪公司网站怎么做