1340. 贪婪的送礼者【简单 / 模拟 哈希表】
·

https://www.acwing.com/problem/content/description/1342/
#include<bits/stdc++.h>
using namespace std;
const int N=1e3+10;
int n;
string s[N];
unordered_map<string,int>mp;
int main(void)
{
cin>>n;
for(int i=0;i<n;i++) cin>>s[i];
for(int i=0;i<n;i++)
{
string id;
int sum,m,temp;
cin>>id>>sum>>m;
if(m==0) continue;//分零个人,可以直接跳过
for(int j=0;j<m;j++)
{
string name; cin>>name;
mp[name]=mp[name]+sum/m;
}
mp[id]=mp[id]-sum/m*m;//现在的减去,分配的
}
for(int i=0;i<n;i++) cout<<s[i]<<" "<<mp[s[i]]<<endl;
return 0;
}
更多推荐



所有评论(0)