較為麻煩的並查集
主要是我的模板是錯的檢查了好久。。。。
先是輸入 把每個家庭連在一起
輸出的家庭編號為該家庭所有編號的最小值 在並查集裡面完成
第一次 0~n-1遍歷儲存好 家庭編號 和房子面積和數量
第二次0~n遍歷 遍歷家庭人數
第三遍 處理人均面積和家庭數量和人均數量
#includeusingnamespace
std;
int f[10000
];int find1(int
x)
returnj;}
void union1(int x,int
y)struct
peo}s[
10001],ans[10001
];int vis[10001]=;
bool cmp(struct peo a,struct
peo b)
intmain()
if(c!=-1
)
scanf("%d
",&q);
while(q--)
}scanf(
"%lf%lf
",&s[i].n,&s[i].s);
}for(int i=0;i)
for(int i=0;i<10000;i++)
}int cnt=0
;
for(int i=0;i<10000;i++)
}sort(ans,ans+9999
,cmp);
printf(
"%d\n
",cnt);
for(int i=0;i)
printf(
"%04d %d %.3lf %.3lf\n
",ans[i].id,ans[i].num,ans[i].n,ans[i].s);
}
L2 007 家庭房產
給定每個人的家庭成員和其自己名下的房產,請你統計出每個家庭的人口數 人均房產面積及房產套數。輸入格式 輸入第一行給出乙個正整數n 1000 隨後n行,每行按下列格式給出乙個人的房產 編號 父 母 k 孩子1 孩子k 房產套數 總面積 其中 編號 是每個人獨有的乙個4位數的編號 父 和 母 分別是該編...
L2 007 家庭房產c 版本答案
給定每個人的家庭成員和其自己名下的房產,請你統計出每個家庭的人口數 人均房產面積及房產套數。輸入格式 輸入第一行給出乙個正整數n 1000 隨後n行,每行按下列格式給出乙個人的房產 編號 父 母 k 孩子1 孩子k 房產套數 總面積 其中編號是每個人獨有的乙個4位數的編號 父和母分別是該編號對應的這...
L2 007 家庭房產(並查集)
給定每個人的家庭成員和其自己名下的房產,請你統計出每個家庭的人口數 人均房產面積及房產套數。輸入第一行給出乙個正整數n 1000 隨後n行,每行按下列格式給出乙個人的房產 編號 父 母 k 孩子1 孩子k 房產套數 總面積其中編號是每個人獨有的乙個4位數的編號 父和母分別是該編號對應的這個人的父母的...