补图

Time Limit: 1000 ms Memory Limit: 65536 KiB

Problem Description

题目给出一个无向图,求该无向图关于完全图的相对补图,并求该补图的最大度和最小度。方便起见,用邻接矩阵表示该无向图。无向图的节点数不少于2并且不超过500.

Input

多组输入,每组输入第一行是无向图中节点的数量即邻接矩阵的行列数n。接下来n行n列为该图的邻接矩阵。

Output

每组数据,首先输出n行n列表示补图的邻接矩阵。接下来一行两个用空格分隔的整数,分别代表补图的最大度和最小度。

Sample Input

4
0 0 1 1
0 0 0 1
1 0 0 0
1 1 0 0

Sample Output

0 1 0 0
1 0 1 0
0 1 0 1
0 0 1 0
2 1
#include <stdio.h>
#include <stdlib.h>
#define MA 550 int main()
{
int n;
int G[MA][MA];
int i, j;
int max, min;
int deg;
while(~scanf("%d", &n))
{
max = 0;
min = MA;
for(i=0; i<n; i++)
{
deg = 0; //初始化每个节点的度数
for(j=0; j<n; j++)
{
scanf("%d", &G[i][j]);
if(i != j) //输入直接求补图该节点的边,减小时间复杂度
{
if(G[i][j] == 1)
{
G[i][j] = 0;
}
else
{
G[i][j] = 1;
}
}
if(G[i][j] == 1)
{
deg++; //计算度数
}
}
if(deg > max)
{
max = deg;
}
if(deg < min)
{
min = deg;
}
} for(i=0; i<n; i++)
{
for(j=0; j<n-1; j++)
{
printf("%d ", G[i][j]);
}
printf("%d\n", G[i][j]);
}
printf("%d %d\n", max, min);
}
return 0;
}

最新文章

  1. NSStringCompareOptions
  2. 小白初学Ioc、DI、Castle Windsor依赖注入,大神勿入(不适)
  3. equals() 与 hashcode() 的区别与联系
  4. http authorization basic请求代码示例
  5. 【转】Android Intent Action 大全
  6. 读取jar内的配置文件
  7. Entity Framework + WCF REST JSON Service
  8. bzoj1260[CQOI2007]涂色paint
  9. Nginx模块fastcgi_cache的几个注意点 转
  10. (三大框架SSH)面试题锦集
  11. Linux shell日常命令和技巧
  12. STL源代码分析--迭代摘要、迭代器失效汇总
  13. C# 中判断字符串是不是汉字
  14. Python3基础 使用id() 查询变量的存储位置
  15. http://codeforces.com/problemset/problem/545/D
  16. Dijango学习_01_pycharm创建应用
  17. 运行python脚本后台执行
  18. web中CookieUtils的工具类
  19. Motan
  20. python时间格式化及前推

热门文章

  1. 页面中CSS的四种引入方式的介绍与比较
  2. WebRTC相关的基础知识点
  3. centos7 qt之程序编译 cant start process “cmake”
  4. 一段上传图片预览JS脚本,Input file图片预览的实现
  5. CentOS集群自动同步时间的一种方法
  6. Ubuntu 查看软件版本
  7. 3.Strings 字符串如何工作?----对缓冲区的理解。
  8. 黑盒测试实践-任务进度-Day03
  9. 编写javascript的基本技巧一
  10. ParameterizedType的作用