现在小红有
由于大家都比较喜欢整数,所以大家每张账单会转给小红
第一行输入两个整数表示账单数和除小红外的总人数(分别用
到
表示)。
接下来行,每
行表示一张账单。对于每张账单:
第一行输入两个整数表示一起吃饭的人数,花费。
第二行输入个整数,表示除小红外有哪些人一起吃饭。
数据保证,的总和不超过
。
输出个整数,表示每个人要给小红转账的总金额。
2 3 3 10 1 2 4 8 1 2 3
6 6 2
第一张账单:第1、2个人都会给小红转4元第二张账单:第1、2、3个人都会给小红转2元因此答案为4+2=6,4+2=6,2
import java.util.HashMap; import java.util.Map; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc=new Scanner(System.in); int n=sc.nextInt(); int m=sc.nextInt(); Map<Integer,Long> map=new HashMap<>(); for(int i=1;i<=m;i++){ map.put(i,0L); } for(int i=0;i<n;i++) { int k=sc.nextInt(); Long c=sc.nextLong();//花费 long spend= (long) Math.ceil(c/(k*1.0)); for(int j=1;j<k;j++) { int member=sc.nextInt(); Long temp=map.get(member)+spend; map.put(member,temp); } } for(int i=1;i<=m;i++) { System.out.print(map.get(i)+" "); } System.out.println(); } }