Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
121560 张泽辰 互送礼物 C++ 解答错误 22 0 MS 252 KB 1456 2024-01-21 22:55:05

Tests(2/9):


#include <iostream> #include <cstring> using namespace std; const int MAX_N = 10; const int MAX_NAME_LENGTH = 15; int main() { int n; cin >> n; char names[MAX_N][MAX_NAME_LENGTH]; int money[MAX_N]; // 读取每个人的名字和准备的钱数 for (int i = 0; i < n; ++i) { cin >> names[i]; money[i] = 0; } // 处理每个人的送礼物情况 for (int i = 0; i < n; ++i) { char sender[MAX_NAME_LENGTH]; int amount, m; cin >> sender >> amount >> m; if (m > 0) { int giftAmount = amount / m; money[i] -= giftAmount * m; // 发送礼物的人花费的钱数 for (int j = 0; j < m; ++j) { char receiver[MAX_NAME_LENGTH]; cin >> receiver; // 查找接收礼物的人的索引 int receiverIndex = -1; for (int k = 0; k < n; ++k) { if (strcmp(receiver, names[k]) == 0) { receiverIndex = k; break; } } // 接收礼物的人得到的钱数 money[receiverIndex] += giftAmount; } } } // 输出每个人的名字和盈亏数 for (int i = 0; i < n; ++i) { cout << names[i] << " " << money[i] << endl; } return 0; }


测评信息: