PAT-B 1015. 德才论(同PAT 1062. Talent and Virtue)
来源:互联网 发布:华讯网络面试 编辑:程序博客网 时间:2024/06/05 04:50
1. 在排序的过程中,注意边界的处理(小于、小于等于)
2. 对于B-level,这题是比较麻烦一些了。
源码:
#include <cstdio>#include <vector>#include <algorithm>using namespace std;struct People{int m_id;int m_virtue;int m_talent;People(int id, int virtue, int talent): m_id(id), m_virtue(virtue), m_talent(talent) {}void print(){printf("%08d %d %d\n", m_id, m_virtue, m_talent);}friend bool operator< (const People& a, const People& b){if (a.m_virtue+a.m_talent != b.m_virtue+b.m_talent){return a.m_virtue+a.m_talent > b.m_virtue+b.m_talent;} else if (a.m_virtue != b.m_virtue){return a.m_virtue > b.m_virtue;} else {return a.m_id < b.m_id;}}};vector<People> sage, noble_man, fool_man, small_man;int n, l, h;int id, virtue, talent;int main(){scanf("%d%d%d", &n, &l, &h);for (int i = 0; i < n; ++ i){scanf("%d%d%d", &id, &virtue, &talent);if (virtue < l || talent < l){continue;} else if (virtue >= h && talent >= h){sage.push_back( People(id, virtue, talent) );} else if (virtue >= h){noble_man.push_back( People(id, virtue, talent) );} else if (virtue >= talent){fool_man.push_back( People(id, virtue, talent) );} else{small_man.push_back( People(id, virtue, talent) );}}sort(sage.begin(), sage.end());sort(noble_man.begin(), noble_man.end());sort(fool_man.begin(), fool_man.end());sort(small_man.begin(), small_man.end());printf("%d\n", sage.size() + noble_man.size() + fool_man.size() + small_man.size());for (size_t i = 0; i < sage.size(); ++ i){sage[i].print();}for (size_t i = 0; i < noble_man.size(); ++ i){noble_man[i].print();}for (size_t i = 0; i < fool_man.size(); ++ i){fool_man[i].print();}for (size_t i = 0; i < small_man.size(); ++ i){small_man[i].print();}return 0;}
0 0
- PAT-B 1015. 德才论(同PAT 1062. Talent and Virtue)
- 1015. 德才论 (25) PAT乙级&1062. Talent and Virtue (25)PAT甲级
- PAT 1062. Talent and Virtue
- PAT 1062. Talent and Virtue
- PAT--1062. Talent and Virtue
- PAT (Advanced Level) 1062. Talent and Virtue (25) 德才论,结构体排序
- 1062. Talent and Virtue (25)-PAT
- pat 1062. Talent and Virtue (25)
- 【PAT】1062. Talent and Virtue (25)
- PAT (Advanced) 1062. Talent and Virtue (25)
- PAT A 1062. Talent and Virtue (25)
- PAT 1062. Talent and Virtue (25)
- 【PAT甲级】1062. Talent and Virtue (25)
- PAT-A 1062. Talent and Virtue (25)
- PAT甲级1062. Talent and Virtue (25)
- PAT-A-1062. Talent and Virtue (25)
- 1062. Talent and Virtue (25)-PAT甲级
- PAT 甲级 1062. Talent and Virtue (25)
- 2014黑龙江省赛热身赛Magic number
- 【Hibernate步步为营】--(一对多映射)之双向关联
- 13.1点、圆的关系
- 《C和指针》第十二章 使用结构和指针和第十七章 经典抽象数据类型
- override和overlode区别(转)
- PAT-B 1015. 德才论(同PAT 1062. Talent and Virtue)
- Linux安装ACE
- Spring 3.x jar 包详解 与 依赖关系
- 关于NAND代码搬移和跳转到SDRAM的理解
- 关于用例需要多少文档以及业务用例等等
- java-HelloWorld-环境配置-常见问题解决
- 异常
- 分支-10. 计算个人所得税(10)
- oracle 通过sqlplus登录以及用户登录切换