899C
来源:互联网 发布:python运维流程系统 编辑:程序博客网 时间:2024/05/17 07:06
题意:输入n,你代表是从1到n的连续自然数,把他们分成两部分,让这两部分的和差值最小。输出第一行是最小的差值,然后输出分成两部分中个数最小的那部分的个数,然后在输出每个具体的数。
题解:因为是从1 开始的自然数,每一个都比前面大1,把所有数加起来,如果sum是偶数的话,分成两部分差值是可以抵消的,差值为0,sum奇数的话,最优差值应是1.所以就两种可能。输出每个数的时候稍微麻烦一些,判断一下就可以。
自己一开想的是考虑n的奇偶性,结果大家可想而知,惨不忍睹,修改好久都不能过....参考了一下cf大神的代码,就是简短精炼....给自己说一声加油!
#include<bits/stdc++.h>using namespace std;int main(){ int n,sum,cnt,j; while(cin>>n) { cnt=0; sum=n*(n+1)/2; if(sum%2==0) puts("0"); else puts("1"); cout<<n/2<<" "; for(int i=n; i>1; i-=2) { if((++cnt)%2) j=0; else j=1; cout<<i-j<<" "; } puts("\n"); } return 0;}
阅读全文
0 0
- 899C
- CodeForce 899C
- c
- c
- c
- c
- C
- c
- c
- c
- C+
- c
- C
- c
- c
- c
- C
- C
- 【OpenGL ES】同步对象和栅栏
- rpm安装mysql5.7.9
- 从0到1,开启vue_mobile---swiper
- android自定义view实现一个钟表
- Android Studio 集成Kotlin遇到的错误
- 899C
- LocalStorage和sessionStorage的使用及区别
- spring系列(三):切面编程(aop)1
- 6.dubbo集群调用、调用失败容错
- Spring Boot @SpringApplicationConfiguration 不能导入的问题
- Http协议中关于请求与响应中文参数乱码问题详解
- transient关键字妙用
- 校友社交平台无人关注? Graduway新获1270万美元融资!
- react打包less样式没渲染