意甲冠军  中国

依据Havel-Hakimi定理构图即可咯  先把顶点按度数从大到小排序  可图的话  度数大的顶点与它后面的度数个顶点相连肯定是满足的  出现了-1就说明不可图了

  1. #include<cstdio>
  2. #include<cstring>
  3. #include<algorithm>
  4. using namespace std;
  5. const int N = 20;
  6. int mat[N][N], ord[N];
  7.  
  8. bool cmp(int i, int j)
  9. {
  10. return mat[i][0] > mat[j][0];
  11. }
  12.  
  13. int main()
  14. {
  15. int cas, i, j, k, t, n;
  16. scanf("%d", &cas);
  17. while(cas--)
  18. {
  19.  
  20. memset(mat, 0, sizeof(mat));
  21. scanf("%d", &n);
  22. for(i = 1; i <= n; ++i)
  23. {
  24. scanf("%d", &mat[i][0]);
  25. ord[i] = i;
  26. }
  27.  
  28. for(i = 1; i <= n; ++i)
  29. {
  30. sort(ord + i, ord + n + 1, cmp);
  31. t = ord[i];
  32. if(mat[t][0] < 0) break;
  33. for(j = 1; j <= mat[t][0]; ++j)
  34. {
  35. k = ord[i + j];
  36. mat[t][k] = mat[k][t] = 1;
  37. --mat[k][0];
  38. }
  39. }
  40.  
  41. if(i <= n) printf("NO\n");
  42. else
  43. {
  44. printf("YES\n");
  45. for(i = 1; i <= n; ++i)
  46. {
  47. for(int j = 1; j <= n; ++j)
  48. printf("%d ", mat[i][j]);
  49. printf("\n");
  50. }
  51. }
  52. if(cas) printf("\n");
  53. }
  54. return 0;
  55. }

Frogs' Neighborhood

Description

未名湖附近共同拥有N个大小湖泊L1L2, ..., Ln(当中包含未名湖)。每一个湖泊Li里住着一仅仅青蛙Fi(1 ≤ i ≤ N)。假设湖泊LiLj之间有水路相连,则青蛙FiFj互称为邻居。如今已知每仅仅青蛙的邻居数目x1x2,
..., xn。请你给出每两个湖泊之间的相连关系。

Input

第一行是測试数据的组数T(0 ≤ T ≤ 20)。

每组数据包含两行。第一行是整数N(2 < N < 10),第二行是N个整数。x1x2,..., xn(0 ≤ xi ≤ N)。

Output

对输入的每组測试数据。假设不存在可能的相连关系。输出"NO"。否则输出"YES"。并用N×N的矩阵表示湖泊间的相邻关系,即假设湖泊i与湖泊j之间有水路相连,则第i行的第j个数字为1。否则为0。

每两个数字之间输出一个空格。假设存在多种可能,仅仅需给出一种符合条件的情形。

相邻两组測试数据之间输出一个空行。

Sample Input

  1. 3
  2. 7
  3. 4 3 1 5 4 2 1
  4. 6
  5. 4 3 1 4 2 0
  6. 6
  7. 2 3 1 1 2 1

Sample Output

  1. YES
  2. 0 1 0 1 1 0 1
  3. 1 0 0 1 1 0 0
  4. 0 0 0 1 0 0 0
  5. 1 1 1 0 1 1 0
  6. 1 1 0 1 0 1 0
  7. 0 0 0 1 1 0 0
  8. 1 0 0 0 0 0 0
  9.  
  10. NO
  11.  
  12. YES
  13. 0 1 0 0 1 0
  14. 1 0 0 1 1 0
  15. 0 0 0 0 0 1
  16. 0 1 0 0 0 0
  17. 1 1 0 0 0 0
  18. 0 0 1 0 0 0

Source

版权声明:本文博客原创文章,博客,未经同意,不得转载。

POJ 1659 Frogs&#39; Neighborhood(度序列组成)的更多相关文章

  1. poj 1659 Frogs&#39; Neighborhood 度序列可图化 贪心

    题意: 对一个无向图给出一个度序列,问他是否可简单图化. 分析: 依据Havel定理,直接贪心就可以. 代码: //poj 1659 //sep9 #include <iostream> ...

  2. poj 1659 Frogs&#39; Neighborhood (度序列)

    Frogs' Neighborhood Time Limit: 5000MS   Memory Limit: 10000K Total Submissions: 7295   Accepted: 31 ...

  3. poj 1659 Frogs' Neighborhood (贪心 + 判断度数序列是否可图)

    Frogs' Neighborhood Time Limit: 5000MS   Memory Limit: 10000K Total Submissions: 6076   Accepted: 26 ...

  4. POJ 1659 Frogs' Neighborhood(Havel-Hakimi定理)

    题目链接: 传送门 Frogs' Neighborhood Time Limit: 5000MS     Memory Limit: 10000K Description 未名湖附近共有N个大小湖泊L ...

  5. poj 1659 Frogs' Neighborhood (DFS)

    http://poj.org/problem?id=1659 Frogs' Neighborhood Time Limit: 5000MS   Memory Limit: 10000K Total S ...

  6. poj 1659 Frogs' Neighborhood Havel-Hakimi定理 可简单图定理

    作者:jostree 转载请注明出处 http://www.cnblogs.com/jostree/p/4098136.html 给定一个非负整数序列$D=\{d_1,d_2,...d_n\}$,若存 ...

  7. poj 1659 Frog's Neighborhood

    未名湖附近共有N个大小湖泊L1, L2, -, Ln(其中包括未名湖),每个湖泊Li里住着一只青蛙Fi(1 ≤ i ≤ N).如果湖泊Li和Lj之间有水路相连,则青蛙Fi和Fj互称为邻居.现在已知每只 ...

  8. POJ 1659 Frogs' Neighborhood(可图性判定—Havel-Hakimi定理)【超详解】

    Frogs' Neighborhood Time Limit: 5000MS   Memory Limit: 10000K Total Submissions: 9897   Accepted: 41 ...

  9. poj 1659 Frogs' Neighborhood( 青蛙的邻居)

    Frogs' Neighborhood Time Limit: 5000MS   Memory Limit: 10000K Total Submissions: 9639   Accepted: 40 ...

随机推荐

  1. xcode target

    A target specifies a product to build and contains the instructions for building the product from a ...

  2. 创建和关联内容数据库到指定Web应用程序和站点集

    创建和关联内容数据库到指定Web应用程序和站点集         一个Web应用程序不限于使用单个内容数据库.SharePoint同意你关联多个内容数据库到Web应用程序.原因之中的一个是基于内容数据 ...

  3. 强势围观,CSDN代码引用bug

    看我写的一篇blog  http://blog.csdn.net/laijieyao/article/details/41014355,在代码上引用了微软雅黑的字体,结果代码显示出来把我给惊呆了 竟然 ...

  4. ajax基本概念,方法

    ajax    Asynchronous javascript and xml异步的 javascript and XMLajax 是一门在不刷新网页的情况下,与服务器进行交互更新部分网页的技术: 传 ...

  5. 该View转换成Bitmap方法

    方法一: /** * 该View绘制到Bitmap上 * @param view 须要绘制的View * @param width 该View的宽度 * @param height 该View的高度 ...

  6. Ubuntu 组态 Tomcat而每天的错误解决

    统环境:Ubuntu 14.10 安装版本号:apache-tomcat-7.0.54.tar.gz 安装步骤: 1.下载 Tomcat 下载 apache-tomcat-7.0.54.tar.gz ...

  7. Gitclient使用

    1 首次安装gitclient msysgit watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY3h4NTA0NjU5OTg3/font/5a6L5L2T/ ...

  8. 漂亮的表格样式(使用CSS样式表控制表格样式)

    根据WEB2.0风格,设计了几个表格样式,我希望你喜欢. WEB2.0推广使用div开放式布局.但并不是完全放弃使用形式,在数据表现形式而言是一个不错的选择. 本节将介绍如何使用现在CSS样式表来控制 ...

  9. FusionCharts简单教程---建立第一个FusionCharts图形

    由于项目需求需要做一个报表,选择FusionCharts作为工具使用.由于以前没有接触过报表,网上也没有比较详细的fusionCharts教程,所以决定好好研究FusionCharts,同时做一个比较 ...

  10. Windows IOT

    Windows IOT 开发入门(准备工作)   终于抽出空来了,将最近研究的东西记录下来,物联网,万物皆可联网.然后可以做到智能家居,智能生活,智能城市....一大堆.吹牛的就不说了. 在实际应用中 ...