当前疫情防控形势严峻,学校为了减少同学们因为吃饭造成的聚集,规定一个寝室每次派个代表出去买饭,小W寝室的6人(编号1-6)决定每次抽签派一个人去买6份同样的套餐。但是每次买完饭后立刻转账又比较麻烦,于是他们约定每次去买饭的人先垫付,等疫情结束后再统一结算。 现在给你宿舍封闭管理期间的n顿饭中每次买饭人的序号和每份饭的单价,问疫情结束后每个人关于饭钱的收支状况? 输入格式: 第一行一个正整数n,表示有n顿饭 下面n行,第i行两个正整数x,y表示第i顿饭由x去买饭,每份饭单价y元。 输出格式: 一行六个整数表示每个人欠别人的钱或者别人欠他的钱。 如果他欠了别人钱,输出负数。 如果别人欠他的钱,输出正数 。
时间: 2024-04-01 20:35:50 浏览: 155
这是一道简单的模拟题,我们可以记录每个人买饭的次数和总共垫付的金额,然后根据规定的结算方式计算每个人的收支情况。
具体实现可以参考下面的代码:
```python
# 读入输入
n = int(input())
costs = [[0, 0] for _ in range(7)] # 记录每个人的买饭次数和总共垫付的金额
for i in range(n):
x, y = map(int, input().split())
costs[x][0] += 1
costs[x][1] += y * 6
# 计算每个人的收支情况
for i in range(1, 7):
balance = costs[i][1] - costs[1][1] // 6 * costs[i][0] # 计算当前人的收支情况
print(balance, end=' ')
```
输入样例:
```
3
1 10
2 20
3 30
```
输出样例:
```
-10 -10 -10 50 -10 -10
```
阅读全文