构造(Virtual Participation,HDU 5334)
来源:互联网 发布:淘宝品质退款率怎么降 编辑:程序博客网 时间:2024/06/05 07:59
一般构造题就是
1、先找到规律
2、然后确定算法
3、最后代码模拟生成。
代码
#include<stdio.h>#include<algorithm>#include<set>#include<vector>using namespace std;const int maxn = 100010;typedef long long ll;int K;ll table[maxn];int ans[maxn];int len;void init(){ for(int i=1;i<maxn;i++) table[i]=table[i-1]+i;}void ok(){ int cnt=0; for(int i=1;i<=len;i++) { set<vector<int> >SET; for(int l=1;l+i-1<=len;l++) { int r = l+i-1; vector<int>tp; for(int j=l;j<=r;j++) tp.push_back(ans[j]); if(!SET.count(tp)) { cnt++; SET.insert(tp); } } } if(cnt==K) puts("YES"); else puts("NO");}void solve(){ if(K<=1e5) { printf("%d\n",K); for(int i=1;i<=K;i++) printf("1%c",i==K?'\n':' '); return; } len = lower_bound(table,table+maxn,K)-table; int sheng = table[len]-K; for(int i=1;i<=len;i++) ans[i]=i; int p=len; while(sheng) { int k = upper_bound(table,table+maxn,sheng)-table; sheng-=table[k-1]; for(int i=p;p-i+1<=k;i--) ans[i]=p; p-=k; } printf("%d\n",len); for(int i=1;i<=len;i++) printf("%d%c",ans[i],i==len?'\n':' '); //ok();}int main(){ init(); while(scanf("%d",&K)==1) solve(); return 0;}
阅读全文
0 0
- 构造(Virtual Participation,HDU 5334)
- hdu 5334 Virtual Participation 构造
- Hdu 5334 Virtual Participation (构造)
- [构造] HDU 5334 Virtual Participation
- HDU 5334 Virtual Participation
- HDOJ 5534 Virtual Participation 构造
- HDOJ 5334 Virtual Participation
- hdu5334(2015多校4)--Virtual Participation(构造)
- HDU 5334(Virtual Participation-(A+C+1)(B+C+1)=K+(1+C)^2-C)
- codeforces 259 div2 virtual Participation
- codeforces 260 div2 virtual Participation
- codeforces 261 div2 virtual Participation
- 2015 Multi-University Training Contest 4(hdu5334 - Virtual Participation)数学
- 解题报告 之 HDU5334 Virtual Participation
- hdu5334 Virtual Participation 多校联合第四场
- Codeforces Round #401 (Div. 2) (Virtual participation) 总结
- hdu 3172 Virtual Friends(map)
- virtual与构造/析构函数(内联函数,构造函数,静态成员函数不能为virtual函数)
- 设置NPM淘宝代理镜像
- 当 better-scroll 遇见 Vue
- 【LeetCode】 31. Next Permutation
- Android 怎么退出整个应用程序?
- Vue-book 2.0 一个移动端简单的全栈 web APP
- 构造(Virtual Participation,HDU 5334)
- windows平台如何装win7系统
- Vue全家桶+Mint-Ui打造高仿QQMusic,搭配详细说明
- Json,String,Map之间的转换
- Vue2.0全家桶仿腾讯体育APP
- jQuery UI 工作原理
- 单片机8051含义
- windows下的Kafka的安装及测试
- Dao