poj 1659 构造
来源:互联网 发布:苏州110网络报警平台 编辑:程序博客网 时间:2024/06/11 22:13
思路可以参考上一篇,比那个简单多了。或者自己搜Havel-Hakimi定理。
#include<iostream>#include<cstdio>#include<cstring>#include<vector>#include<algorithm>using namespace std;struct node{ int num,cnt;}p[111];int n,m;bool l[111][111];bool cmp(node x,node y){return x.cnt>y.cnt;}void solve(){ m=0; for(int i=0;i<n;i++) { sort(p+i,p+n,cmp); int u=p[i].num; for(int j=i+1;j<n;j++) { int v=p[j].num; if(p[i].cnt&&p[j].cnt) { p[i].cnt--;p[j].cnt--; l[u][v]=l[v][u]=1; m++; } else break; } if(p[i].cnt) { printf("NO\n"); return; } } printf("YES\n"); for(int i=1;i<=n;i++) { for(int j=1;j<=n;j++) { if(l[i][j])printf("1"); else printf("0"); if(j!=n)printf(" "); } printf("\n"); }}int main(){ int t; scanf("%d",&t); while(t--) { scanf("%d",&n); memset(l,0,sizeof(l)); for(int i=0;i<n;i++){scanf("%d",&p[i].cnt);p[i].num=i+1;} solve(); if(t)printf("\n"); } return 0;}
0 0
- poj 1659 构造
- poj 1186 哈希表构造
- poj 3295 构造
- poj 2201 构造
- poj 2166 构造
- poj 2825 蜜汁构造
- poj-2104【构造】
- poj 3295 构造法
- POJ 1305 勾股数的构造
- POJ 3295 Tautology 构造方法
- POJ 3735 构造矩阵乘法
- POJ 3420 构造矩阵乘法
- POJ-3735 线性变换构造矩阵
- POJ 1977 构造矩阵乘法
- 【Prim】-POJ-2421-构造公路
- POJ - 3295 - Tautology (构造)
- POJ 3295 Tautology 构造 stack
- [POJ 3295]Tautology[构造][DFS]
- poj 2019 Cornfields(二维RMQ)
- wait() waitpid()信号返回 进程和子进程
- 卷积神经网络
- The old Padawan(二分)
- VC利用ADO访问数据库
- poj 1659 构造
- 浅析UML之对象图object diagram
- poj 1191 DP
- HDU 2126 Buy the souvenirs
- Linux3.X下的Samsung MFC(Multi Format Codec) Firmware
- java导出pdf
- Sorting It All Out(简单的拓扑排序)
- spring-mvc浅析入门
- PHP-CLI 简介