题解——Codeforces Round #508 (Div. 2) T2 (构造)
按照题意构造集合即可
注意无解情况的判断
#include <cstdio>
#include <algorithm>
#include <cstring>
#include <cmath>
#include <vector>
#include <map>
using namespace std;
int n,sum;
int main(){
scanf("%d",&n);
if(n==){
printf("No\n");
return ;
}
sum=(n+)*n/;
// printf("%d\n",sum);
for(int i=;i<=sum;i++){
for(int j=;j<=sqrt(i);j++){
if(i%j==){
if(j!=i/j){
if(j!=&&sum!=i){
if((sum-i)%j==){
vector<int> ax,bx;
int cnta=,cntb=;
int now=n;
for(int k=i;k>;){
if(k>=now){
k-=now;
cnta++;
ax.push_back(now);
now--;
}
else{
cntb++;
bx.push_back(now);
now--;
}
}
while(now){
bx.push_back(now);
now--;
cntb++;
}
printf("Yes\n");
printf("%d ",cnta);
for(int i=;i<ax.size();i++)
printf("%d ",ax[i]);
printf("\n");
printf("%d ",cntb);
for(int i=;i<bx.size();i++)
printf("%d ",bx[i]);
printf("\n");
return ;
}
}
if(i/j!=&&sum!=i){
if((sum-i)%(i/j)==){
vector<int> ax,bx;
int cnta=,cntb=;
int now=n;
for(int k=i;k>;){
if(k>=now){
k-=now;
cnta++;
ax.push_back(now);
now--;
}
else{
cntb++;
bx.push_back(now);
now--;
}
}
while(now){
bx.push_back(now);
now--;
cntb++;
}
printf("Yes\n");
printf("%d ",cnta);
for(int i=;i<ax.size();i++)
printf("%d ",ax[i]);
printf("\n");
printf("%d ",cntb);
for(int i=;i<bx.size();i++)
printf("%d ",bx[i]);
printf("\n");
return ;
}
}
}
else{
if(j!=&&i!=sum)
if((sum-i)%j==){
vector<int> ax,bx;
int cnta=,cntb=;
int now=n;
for(int k=i;k>;){
if(k>=now){
k-=now;
cnta++;
ax.push_back(now);
now--;
}
else{
cntb++;
bx.push_back(now);
now--;
}
}
while(now){
bx.push_back(now);
now--;
cntb++;
}
printf("Yes\n");
printf("%d ",cnta);
for(int i=;i<ax.size();i++)
printf("%d ",ax[i]);
printf("\n");
printf("%d ",cntb);
for(int i=;i<bx.size();i++)
printf("%d ",bx[i]);
printf("\n");
return ;
}
}
}
}
}
printf("No\n");
return ;
}
题解——Codeforces Round #508 (Div. 2) T2 (构造)的更多相关文章
- 题解——Codeforces Round #508 (Div. 2) T3 (贪心)
贪心的选取最优解 然后相减好 记得要开long long #include <cstdio> #include <algorithm> #include <cstring ...
- 题解——Codeforces Round #508 (Div. 2) T1 (模拟)
依照题意暴力模拟即可A掉 #include <cstdio> #include <algorithm> #include <cstring> #include &l ...
- Codeforces Round #508 (Div. 2)
Codeforces Round #508 (Div. 2) http://codeforces.com/contest/1038 A #include<bits/stdc++.h> us ...
- [题解] Codeforces Round #549 (Div. 2) B. Nirvana
Codeforces Round #549 (Div. 2) B. Nirvana [题目描述] B. Nirvana time limit per test1 second memory limit ...
- Codeforces 1038F Wrap Around (Codeforces Round #508 (Div. 2) F) 题解
写在前面 此题数据量居然才出到\(n=40\)???(黑人问号)以下给出一个串长\(|S|=100,n=10^9\)的题解. 题目描述 给一个长度不超过\(m\)的01串S,问有多少个长度不超过\(n ...
- Codeforces Round #508 (Div. 2) E. Maximum Matching(欧拉路径)
E. Maximum Matching 题目链接:https://codeforces.com/contest/1038/problem/E 题意: 给出n个项链,每条项链左边和右边都有一种颜色(范 ...
- Codeforces Round #272 (Div. 1) B 构造 math
http://www.codeforces.com/contest/477/problem/C 题目大意:给你n个集合,每个集合里面有四个数字,他们的gcd是k,输出符合条件的集合中m,m为集合中最大 ...
- Codeforces Round #508 (Div. 2) D. Slime
D. Slime 题目链接:https://codeforces.com/contest/1038/problem/D 题意: 给出两个数,然后每次可以对相邻的两个数合并,比如x,y,那么合并过后就是 ...
- CF1103C Johnny Solving (Codeforces Round #534 (Div. 1)) 思维+构造
题目传送门 https://codeforces.com/contest/1103/problem/C 题解 这个题还算一个有难度的不错的题目吧. 题目给出了两种回答方式: 找出一条长度 \(\geq ...
随机推荐
- django migrate无效的解决方法
遇到一个很奇怪的问题 python manage.py makemigrations 的时候显示要创建两张表,但是执行 python manage.py migrate 的时候不能识别,也就是说失效了 ...
- 基于Kubernetess集群部署完整示例——Guestbook
目录贴:Kubernetes学习系列 本文依赖环境:Centos7部署Kubernetes集群.基于Kubernetes集群部署skyDNS服务 该示例中,我们将创建一个redis-master.两个 ...
- go语言,golang学习笔记3 用命令下载框架报错问题解决 设置环境变量
go语言,golang学习笔记3 用命令下载框架报错问题解决 设置环境变量 下载安装:go get github.com/astaxie/beego 首页 - beego: 简约 & 强大并存 ...
- RESTful API 设计指南,RESTful API 设计最佳实践
RESTful API 设计指南,RESTful API 设计最佳实践 网络应用程序,分为前端和后端两个部分.当前的发展趋势,就是前端设备层出不穷(手机.平板.桌面电脑.其他专用设备......). ...
- java连接oracle数据库使用SERVICE NAME、SID以及TNSName不同写法
格式一: 使用ServiceName方式: jdbc:oracle:thin:@//<host>:<port>/<service_name> 例 jdbc:orac ...
- 75.Java异常处理机制-自定义异常
package testDate; //自定义异常 public class MyException extends Exception{ public MyException(){ } public ...
- Hbase 过滤器的使用
Filter filter= new RowFilter(CompareFilter.CompareOp.EQUAL,new RegexStringComparator("."+d ...
- Java 代码性能调优“三十六”策
代码优化,一个很重要的课题.可能有些人觉得没用,一些细小的地方有什么好修改的,改与不改对于代码的运行效率有什么影响呢?这个问题我是这么考虑的,就像大海里面的鲸鱼一样,它吃一条小虾米有用吗?没用,但是, ...
- OpenGL: 实现立体显示
https://blog.csdn.net/augusdi/article/details/19922295 立体显示原理:设没有立体显示的模型视图矩阵ModelView为Mv,投影矩阵为Mp,则.物 ...
- camera理论基础和工作原理(转)
源: camera理论基础和工作原理