#1446. 完善练习3

完善练习3

完善题目

nn个朋友互送礼物,每个人送出的钱会平均分给收到礼物的人。我们需要计算每个人送出的钱和收到的钱的差额。每个朋友都有一些钱准备送礼,这些钱将被平均分给他选择的朋友。如果一个人有 xx 元钱,并决定送给 yy 个朋友,那么每个朋友将得到 x/y\lfloor x/y \rfloor 元,剩余的钱返还给送礼者。我们需要根据每个人送出和收到的钱数,计算他们的净收入。

1	#include<iostream>
2	#include<cstring>
3	using namespace std;
4	struct person{
5	    string name;
6	    int money;
7	}a[12]; 
8	string name_out, name_in;
9	int n, mout, num, sum;
10	int main(){
11	    cin >> n;
12	    for(int i = 1; i <= n; i++) cin >> a[i].name;  
13	    for(int i = 1; i <= n; i++){
14	        cin >> name_out >> ___①____ >> num;  
15	        if(___②____) continue; 
16
17			int flag = 1;
18  		for(int j = 1; j <= num; j++){
19            	cin >> name_in; 
20            	for(int k = 1; k <= n; k++){
21                	if(flag && ___③___) flag--, a[k].money -= mout / num * num; 
22	
23	                if(___④___) a[k].money += ___⑤____; 
24	            }
25	        }
26	    }
27	    for(int i = 1; i <= n; i++) cout << a[i].name << " " << a[i].money << endl; 
28	}
  1. ①处应该填入 ( ) {{ select(1) }}
  • mout
  • sum
  • num
  • n
  1. ②处应该填入 ( ) {{ select(2) }}
  • !num || !mout
  • num == 0 && mout == 0
  • sum == 0 || mout == 0
  • !num && !mout
  1. ③处应该填入 ( ) {{ select(3) }}
  • a[k].name == name_in
  • a[k].name == name_out
  • flag
  • a[k].money > 0
  1. ④处应该填入 ( ) {{ select(4) }}
  • a[k].name == name_out
  • a[k].name == name_in
  • flag
  • name_out != name_in
  1. ⑤处应该填入 ( ) {{ select(5) }}
  • mout / num
  • num / mout
  • mout * num
  • num - mout