码迷,mamicode.com
首页 > 其他好文 > 详细

握手(bestcode#42)

时间:2015-05-24 00:01:22      阅读:370      评论:0      收藏:0      [点我收藏+]

标签:

Shaking hands

问题描述
今天是Gorwin的生日,所以她举办了一个派对并邀请她的朋友来参加。她将邀请n个朋友,为了方便,Gorwin把他们从1到n标号。他们之中有一些人已经相互认识,有一些人不认识对方。相互认识的朋友见面之后会握手然后喝一杯香槟。Gorwin想要知道要准备多少杯香槟。你能帮助她吗?
输入描述
多组测试数据(大概30组),每组数据的第一行有一个整数n表示Gorwin要邀请n个朋友来参加她的派对。
接下来n行会给出一个n*n的矩阵,如果a[i][j]是1,那么朋友i和朋友j是相互认识的,否则他们不认识。
请处理到文件末尾。
[参数约定]
所有输入均为整数。
1<=n<=30
0<=a[i][j]<=1
a[i][i]=0;
a[i][j]=a[j][i] for i!=j
输出描述
对于每一个数据,在一行中输出一个整数代表Gorwin总共要准备多少香槟。
输入样例
2
0 0
0 0
3
0 0 1
0 0 0
1 0 0
输出样例
4
8
Hint
对于第二个数据,Gorwin会和她所有的朋友握手,然后喝三杯香槟,她的三个朋友也各喝一杯。朋友1和朋友3相互认识,他们握手,然后各自喝一杯。这样总共要3+3+2=8杯香槟。
 1 #include<stdio.h>
 2 int main()
 3 {
 4     int T,n,i,j;
 5     int a[31][31];
 6     while(~scanf("%d",&n))
 7     {
 8         int count=0;
 9         for(i=0;i<n;i++)
10             for(j=0;j<n;j++)
11                 scanf("%d",&a[i][j]);
12     for(i=0;i<n;i++)
13         for(j=0;j<i;j++)
14             if(a[i][j]==1)
15                 count++;
16     printf("%d\n",(count+n)*2);
17     
18     }
19 }

 

握手(bestcode#42)

标签:

原文地址:http://www.cnblogs.com/a1225234/p/4525112.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!