7-1 顶点的度 (15 分)

顶点的图。给定一个有向图,输出各顶点的出度和入度。

输入格式:

输入文件中包含多个测试数据,每个测试数据描述了一个无权有向图。每个测试数据的第一行为两个正整数n 和m,1 ≤ n ≤ 100,1 ≤ m ≤ 500,分别表示该有向图的顶点数目和边数,顶点的序号从1 开始计起。接下来有m 行,每行为两个正整数,用空格隔开,分别表示一条边的起点和终点。每条边出现一次且仅一次,图中不存在自身环和重边。

输出格式:

对输入文件中的每个有向图,输出两行:第1 行为n 个正整数,表示每个顶点的出度;第2行也为n 个正整数,表示每个顶点的入度。每个数之后输出一个空格。

输入样例:

7 9
1 2
2 3
2 5
2 6
3 5
4 3
5 2
5 4
6 7 

结尾无空行

输出样例:

1 3 1 1 2 1 0
0 2 2 1 2 1 1

结尾无空行

#include<iostream>
#include<stdlib.h>
using namespace std;
#define max 100
typedef struct gnode *grap;
struct gnode{int n;int m;int g[max][max];
};
grap create(void){grap p=(gnode *)malloc(sizeof(struct gnode));p->n=0;p->m=0;return p;
}
void insert(grap mgrap,int a,int b){mgrap->g[a][b]=1;
}
void output(grap mgrap){int i,j,first=1;for(i=1;i<=mgrap->n;i++){int out=0;for(j=1;j<=mgrap->n;j++){if(mgrap->g[i][j])out++;}if(first==1){printf("%d",out);first=0;}elseprintf(" %d",out);}printf("\n");first=1;for(i=1;i<=mgrap->n;i++){int in=0;for(j=1;j<=mgrap->n;j++){if(mgrap->g[j][i])in++;}if(first==1){printf("%d",in);first=0;}else{printf(" %d",in);}}
}
void reset(grap mgrap){int i,j;for(i=1;i<=mgrap->n;i++){for(j=1;j<=mgrap->n;j++){mgrap->g[i][j]=0;}}mgrap->n=0;mgrap->m=0;
}
int main(){int m,n,i,j,a,b;grap mgrap=create();while(1){scanf("%d %d",&n,&m);if(n==0&&m==0)break;else{mgrap->n=n;mgrap->m=m;reset(mgrap);mgrap->n=n;mgrap->m=m;for(i=1;i<=m;i++){scanf("%d%d",&a,&b);insert(mgrap,a,b);}output(mgrap);reset(mgrap);}printf("\n");}return 0;
}

7-1 顶点的度 (15 分)相关推荐

  1. 7-2 求顶点的度 (60 分)

    设有一无向图,其顶点值为字符型并假设各值互不相等,采用邻接矩阵表示法存储表示.设计一个算法,输出该无向图中所有顶点的度. 输入格式: 有多组测试数据,每组数据的第一行为两个整数n和e,表示n个顶点和e ...

  2. 7-2 整除分块 (15 分)

    7-2 整除分块 (15 分) 整除分块,又称数论分块.是数论算法中的重要技巧,你可以在各种需要枚举因子的连续求和类问题中见到它的身影.如杜教筛,莫比乌斯反演化简后的整除分段求和等. 整除分块基于这样 ...

  3. 输出华氏-摄氏温度转换表(15分)

    输出华氏-摄氏温度转换表(15分) 输入2个正整数lower和upper(lower≤upper≤100),请输出一张取值范围为[lower,upper].且每次增加2华氏度的华氏-摄氏温度转换表. ...

  4. L1-050 倒数第N个字符串 (15 分)andL1-054 福到了 (15 分)

    L1-050 倒数第N个字符串 (15 分) 去年 考核写这个题 硬是没写出来 一年了 还是有进步的. 题目: 给定一个完全由小写英文字母组成的字符串等差递增序列,该序列中的每个字符串的长度固定为 L ...

  5. 团队程序设计天梯赛考点内容总结(15分以上题)

    L1: L1-002 打印沙漏 (20 分) 字符模拟 L1-003 个位数统计 (15 分) 字符模拟 L1-005 考试座位号 (15 分) 模拟 L1-006 连续因子 (20 分) 数学因数分 ...

  6. PTA 找单词 (15分)(bfs)

    7-2 找单词 (15分) 假设有x1个字母A, x2个字母B,- x26个字母Z,同时假设字母A的价值为1,字母B的价值为2,- 字母Z的价值为26.那么,对于给定的字母,可以找到多少价值<= ...

  7. 浙大版《C语言程序设计(第3版)》题目集 练习2-12 输出华氏-摄氏温度转换表 (15 分)...

    练习2-12 输出华氏-摄氏温度转换表 (15 分) 输入2个正整数lower和upper(lower≤upper≤100),请输出一张取值范围为[lower,upper].且每次增加2华氏度的华氏- ...

  8. 鲁大师12月新机流畅榜: MIUI13流畅度跑分首次亮相

    12月安卓新发布手机流畅榜数据来自鲁大师APP 12.01日-12.31日数据,榜单只筛选在这期间新发布的机型.部分新机测试数据较少或为工程机数据,分数不稳定.榜单展示分数为鲁大师数据中心均分,已在鲁 ...

  9. 浙大版《C语言程序设计(第3版)》题目集 练习2-17 生成3的乘方表 (15 分)

    练习2-17 生成3的乘方表 (15 分) 输入一个非负整数n,生成一张3的乘方表,输出3​0​​~3​n​​的值.可调用幂函数计算3的乘方. 输入格式: 输入在一行中给出一个非负整数n. 输出格式: ...

最新文章

  1. c++ 程序执行时间
  2. Re:从0开始的微服务架构--(二)快速快速体验微服务架构?--转
  3. DB2基础学习一 DB2产品介绍
  4. Android中文API (60) —— DatePicker.OnDateChangedListener
  5. Python:序列化
  6. java代码审查工具_APP开发常用的一些工具包、软件工具
  7. linux和windows下icmp的区别
  8. P1541 乌龟棋 线性dp
  9. hdu acm2548
  10. LoRa点对点系统9 下载源代码与PC软件
  11. 金蝶k3服务器系统吗,金蝶k3能在云服务器上吗
  12. win10误删的注册表能还原吗_win10恢复系统注册表,win10删除注册表怎么还原
  13. 修改网络设备在路由器中显示名称
  14. 伊利诺伊香槟分校计算机排名,伊利诺伊大学香槟分校计算机专业排名好不好?_托普仕留学...
  15. 利用C 语言求一元二次方程解
  16. C# 高并发获取唯一ID算法
  17. 反催收凉透 马上、平安普惠、招联、中银消费金融等联手打击
  18. 在Unity实现Canny边缘检测
  19. Skip List——跳表,一个高效的索引技术
  20. 短距离无线通讯-NFC

热门文章

  1. 一杯水怎么测试_每滴都是“芯”鲜好水,碧然德新款净水器实测
  2. python爬虫爬取大众点评并导入redis
  3. web自动化测试第12步:selenium中下拉框的解决方法(Select)
  4. Python 爬虫学习2
  5. 解决openresty http客户端不支持https的问题
  6. Theano3.7-练习之堆叠消噪自动编码器
  7. 无法序列化会话状态。请注意,当会话状态模式为“StateServer”或“SQLServer”时,不允许使用无法序列化的对象或 MarshalByRef 对象。...
  8. hdu 1525 博弈
  9. 简单工厂模式:Simple Factory Pattern(转自阿良.NET)
  10. Andriod下音频的相关操作