#include <iostream>
#include <cstring>
#include <cmath>
using namespace std;
int main()
{
long long n,m;
cin>>n>>m;
long long a[100010];
int h=n;
//jingen
memset(a,0,sizeof a);
while(h--)
{
int x,y;
cin>>x>>y;
int g=ceil((double)y/x);
getchar();
for(int i=1;i<=x-1;i++)
{
int u;
cin>>u;
a[u]+=g;
}
}
for(int i=1;i<=m;i++) cout<<a[i]<<" ";
return 0;
}
该题属于模拟,直接分别处理各组数据,用ceil函数向上取整(使用时需要将整型转换为小数),用数组存每个人需要支付的钱。参与链接

京公网安备 11010502036488号