当前位置:网站首页>洛谷P1201 贪婪的送礼者Greedy Gift Givers
洛谷P1201 贪婪的送礼者Greedy Gift Givers
2022-08-07 04:53:00 【CLH_W】
题目描述
对于一群 nn 个要互送礼物的朋友,GY 要确定每个人送出的钱比收到的多多少。在这一个问题中,每个人都准备了一些钱来送礼物,而这些钱将会被平均分给那些将收到他的礼物的人。
然而,在任何一群朋友中,有些人将送出较多的礼物(可能是因为有较多的朋友),有些人有准备了较多的钱。
给出一群朋友,没有人的名字会长于 1414 字符,给出每个人将花在送礼上的钱,和将收到他的礼物的人的列表,请确定每个人收到的比送出的钱多的数目。
输入格式
第一行一个正整数 nn,表示人数。 接下来nn 行,每行一个字符串表示人名。
接下来有 LL 段内容,对于每一段: 第一行是将会送出礼物人的名字。
第二行包含二个非负整数,第一个是原有的钱的数目 ( \in [0,2000]∈[0,2000] ),第二个 g_ig
i
是将收到这个人礼物的人的个数 如果 g_i \neq 0g
i
=0, 在下面 g_ig
i
行列出礼物的接受者的名字,一个名字一行。
输出格式
输出共 nn 行,每行输出一个人的名字和该人收到的钱比送出的钱多的数目。名字的顺序应该与输入第 22 行至 n+1n+1 行的顺序相同。
送出的钱永远是整数,即假设送礼人一次向 mm 人送出 nn 元,每个人应该得到 \lfloor n/m \rfloor⌊n/m⌋ 元。剩余未送出的钱应返还给送礼者。
输入输出样例
输入 #1复制
5
dave
laura
owen
vick
amr
dave
200 3
laura
owen
vick
owen
500 1
dave
amr
150 2
vick
owen
laura
0 2
amr
vick
vick
0 0
输出 #1复制
dave 302
laura 66
owen -359
vick 141
amr -150
说明/提示
【数据范围】1\le n \le 101≤n≤10
题目翻译来自NOCOW。
USACO Training Section 1.1
上代码:
#include<bits/stdc++.h>
using namespace std;
int a[200];//记录收到的钱
int b[200];//记录送出的钱
int sum;
int n;
string name[200];//记录名字
string s;
void search(string ss)//找到他是第几个
{
for (int i=1;i<=n;i++)
{
if (ss==name[i])
{
sum=i;
break;
}
}
return;
}
int main()
{
scanf("%d",&n);
for (int i=1;i<=n;i++)
cin>>name[i];
int x,y;
for (int i=1;i<=n;i++)
{
cin>>s;
cin>>x>>y;
if (y==0)
{
search(s);
a[sum]+=x;
continue;
}
int num=x/y;
search(s);
a[sum]+=x-num*y;//将没除完的钱保存起来
b[sum]+=x;
for (int k=1;k<=y;k++)
{
cin>>s;
search(s);
a[sum]+=num;
}
}
for (int i=1;i<=n;i++)
cout<<name[i]<<" "<<a[i]-b[i]<<endl;
return 0;
}
边栏推荐
猜你喜欢

网线Cable

线性代数学习笔记6-4:行列式的应用(用伴随矩阵求逆矩阵、克莱姆法则解方程、行列式求面积/体积)

Seq2Seq superficial understanding

Summary of CefSharp Methods

Automatic water quality monitoring and video monitoring to consolidate and improve the level of drinking water safety

typescript85-class组件类型

M write log to text

How to quickly develop an app?Mini programs + plugins are indispensable

"go1.15.3" does not match go tool version "go1.13.8"

Small application container in the application of integrated online government service platform
随机推荐
字符脱敏工具
MySQL进阶1——底层数据结构B+树
线性代数学习笔记4-2:对线性方程组的理解、高斯消元法、LU分解
Terminal data encryption
Brush the title "Sword Finger Offer" day11
Golang Break, Continue out of multi-layer cycle
[TypeScript Notes] 03 - TS Type Declaration File
typescript84-事件类型
mysql8 change password
tiup cluster help
Summary of CefSharp Methods
tiup cluster display
【TypeScript笔记】02 - TS高级类型
【SemiDrive源码分析】【MailBox核间通信】48 - 将RPMSG IPCC RPC 单次传输数据大小修改为 512字节(代码实战部分)
Find My Information | AirTag is helping more people find their lost luggage, and Find My is becoming more and more useful
【Yu Niangniang】1373. Maximum key value and DFS of binary search subtree
tiup cluster enable
golang server proxy
刷题《剑指Offer》day11
2022牛客多校六 M-Z-Game on grid(动态规划)