UVA 119.Greedy Gift Givers
来源:互联网 发布:java 多线程返回结果 编辑:程序博客网 时间:2024/06/05 03:19
题意:每个人的钱尽可能多的花掉,剩下的当做自己的收入.题目求得是每个人的纯收入,即1.从朋友那里得到的加上自己剩余的.2.如果朋友为0(没有送给任何人),则这部分钱不算自己的收入.
注意:每个输入组的数据要用一个空行隔开,但是不能单纯的在每组数据输入之后才打印空行,要在除了第一组之前答应空行.
#include <iostream>#include <stdlib.h>#include <stdio.h>#include <string>using namespace std; struct Node { string name; int give; int rest; int friends;//朋友数量 int friends_num[100];//保存朋友的下标 }; int main() { int num;bool flag = false;while(cin >> num){if(flag)cout << endl;elseflag = true;int i,j,k,m; Node person[10]; string name; for(i = 0;i < num;i++) { cin >> person[i].name; } for(i = 0;i < num;i++) { cin >> name; for(j = 0;j < num;j++) { if(name == person[j].name) { cin >> person[j].give; cin >> person[j].friends;break; } } for(m = 0;m < person[j].friends;m++) { cin >> name; for(k = 0;k < num;k++) { if (name == person[k].name) {person[j].friends_num[m] = k;break;} } } } for(i = 0;i < num;i++) {if(person[i].friends == 0){person[i].rest = 0;}else{person[i].rest = person[i].give % person[i].friends;}} for(i = 0;i < num;i++) { if(person[i].friends) { for(j = 0;j < person[i].friends;j++) { person[person[i].friends_num[j]].rest += (person[i].give / person[i].friends); } } } for(i = 0;i < num;i++) { if(person[i].friends == 0){cout << person[i].name <<" "<< person[i].rest << endl; }else{cout << person[i].name <<" "<< person[i].rest - person[i].give << endl;} }} return 0; }
- UVA 119.Greedy Gift Givers
- UVA Greedy Gift Givers
- UVa 119 - Greedy Gift Givers
- uva 119 Greedy Gift Givers
- UVa Problem 119 - Greedy Gift Givers
- UVa Problem 119 - Greedy Gift Givers
- Greedy Gift Givers
- Analysis:Greedy Gift Givers
- Greedy Gift Givers
- Greedy Gift Givers(USACO)
- usaco--Greedy Gift Givers
- Greedy Gift Givers
- [USACO] Greedy Gift Givers
- Greedy Gift Givers
- Greedy Gift Givers
- 1.1 Greedy Gift Givers
- USASO Greedy Gift Givers
- Greedy Gift Givers
- 28个Unix/Linux的命令行神器
- 【Android基础入门〖10〗】BaseAdapter中convertView回收的机制
- hadoop运行时遇到的问题及解决方案
- 【Android基础入门〖11〗】Fragment
- 应该知道的Linux技巧
- UVA 119.Greedy Gift Givers
- 【Android基础入门〖12〗】滑动菜单SlidingMenu
- 基于笔画特征的文字检测探讨
- setCompoundDrawablesWithIntrinsicBounds()与setCompoundDrawables()的使用
- cocos2d-x中CCComController的使用方法
- MFC的消息处理机制由两部分组成:CCmdTarget类和消息映射表。
- 【Android基础入门〖13〗】Gallery
- 侧边栏(带滑动) + 桌面悬浮窗 + 下拉刷新 + Fragment
- [C#]用mono写跨平台的C#程序