数据结构实验之排序七:选课名单 (sdut oj3404)
2016-08-01 19:46
295 查看
</pre><pre name="code" class="cpp"><center style="padding: 0px; margin: 0px; color: rgb(51, 51, 51); font-family: 微软雅黑, 黑体, 宋体, Verdana, Helvetica, Arial, Geneva, sans-serif; line-height: 18px;"><h2 style="padding: 0px; margin: 10px 0px 7px; font-family: 微软雅黑, 'Trebuchet MS', Helvetica, Arial, Geneva, sans-serif; font-weight: normal; color: rgb(124, 169, 237); font-size: 20px; line-height: 24px;">数据结构实验之排序七:选课名单</h2><h4 style="padding: 0px; margin: 0px 0px 5px; font-family: 微软雅黑, 'Trebuchet MS', Helvetica, Arial, Geneva, sans-serif; font-weight: normal; color: red; font-size: 16px; line-height: 20px;"></h4></center><center style="padding: 0px; margin: 0px; color: rgb(51, 51, 51); font-family: 微软雅黑, 黑体, 宋体, Verdana, Helvetica, Arial, Geneva, sans-serif; line-height: 18px;"><a target=_blank href="http://acm.sdut.edu.cn/sdutoj/shownews.php?nid=24#time" title="C、C++、go、haskell、lua、pascal Time Limit1000ms Memory Limit 65536K java、python2、python3、ruby、perl Time Limit2000ms Memory Limit 131072K" style="padding: 0px; margin: 0px; color: rgb(83, 113, 197); text-decoration: none;"></a><h5 style="padding: 0px; margin: 0px 0px 5px; font-family: 微软雅黑, 'Trebuchet MS', Helvetica, Arial, Geneva, sans-serif; font-weight: normal; color: rgb(58, 128, 0); font-size: 14px;">Time Limit: 1000ms Memory limit: 65536K 有疑问?点这里^_^</h5></center><h2 style="padding: 0px; margin: 10px 0px 7px; font-family: 微软雅黑, 'Trebuchet MS', Helvetica, Arial, Geneva, sans-serif; font-weight: normal; color: rgb(124, 169, 237); font-size: 20px; line-height: 24px;">题目描述</h2><div class="pro_desc" style="padding: 0px; margin: 0px; color: rgb(51, 51, 51); font-family: 微软雅黑, 黑体, 宋体, Verdana, Helvetica, Arial, Geneva, sans-serif; line-height: 18px;"><p style="padding-top: 0px; padding-bottom: 0px; margin-top: 0px; margin-bottom: 10px;"><span style="padding: 0px; margin: 0px;"><span style="padding: 0px; margin: 0px;"><span style="padding: 0px; margin: 0px;"><span style="padding: 0px; margin: 0px; font-family: Arial;">随着学校规模的扩大,学生人数急剧增加,选课名单的输出也成为一个繁重的任务,我校目前有在校生3万多名,两千多门课程,请根据给定的学生选课清单输出每门课的选课学生名单。</span></span></span></span></p></div><h2 style="padding: 0px; margin: 10px 0px 7px; font-family: 微软雅黑, 'Trebuchet MS', Helvetica, Arial, Geneva, sans-serif; font-weight: normal; color: rgb(124, 169, 237); font-size: 20px; line-height: 24px;">输入</h2><div class="pro_desc" style="padding: 0px; margin: 0px; color: rgb(51, 51, 51); font-family: 微软雅黑, 黑体, 宋体, Verdana, Helvetica, Arial, Geneva, sans-serif; line-height: 18px;"><p style="padding-top: 0px; padding-bottom: 0px; margin-top: 0px; margin-bottom: 10px;"><span style="padding: 0px; margin: 0px;"><span style="padding: 0px; margin: 0px;"><span style="padding: 0px; margin: 0px;"><span style="padding: 0px; margin: 0px; font-family: Arial;">输入第一行给出两个正整数N( N ≤ 35000)和M(M ≤ 2000),其中N是全校学生总数,M是课程总数,随后给出N行,每行包括学生姓名拼音+学号后两位(字符串总长度小于10)、数字S代表该学生选课的总数,随后是S个课程编号,约定课程编号从1到M,数据之间以空格分隔。</span></span></span></span></p><div style="padding: 0px; margin: 0px;"> </div></div><h2 style="padding: 0px; margin: 10px 0px 7px; font-family: 微软雅黑, 'Trebuchet MS', Helvetica, Arial, Geneva, sans-serif; font-weight: normal; color: rgb(124, 169, 237); font-size: 20px; line-height: 24px;">输出</h2><div class="pro_desc" style="padding: 0px; margin: 0px; color: rgb(51, 51, 51); font-family: 微软雅黑, 黑体, 宋体, Verdana, Helvetica, Arial, Geneva, sans-serif; line-height: 18px;"><p style="padding-top: 0px; padding-bottom: 0px; margin-top: 0px; margin-bottom: 10px;"><span style="padding: 0px; margin: 0px;"><span style="padding: 0px; margin: 0px;"><span style="padding: 0px; margin: 0px;"><span style="padding: 0px; margin: 0px; font-family: Arial;">按课程编号递增的顺序输出课程编号、选课总人数以及选课学生名单,对选修同一门课程的学生按姓名的字典序输出学生名单。数据之间以空格分隔,行末不得有多余空格。</span></span></span></span></p></div><h2 style="padding: 0px; margin: 10px 0px 7px; font-family: 微软雅黑, 'Trebuchet MS', Helvetica, Arial, Geneva, sans-serif; font-weight: normal; color: rgb(124, 169, 237); font-size: 20px; line-height: 24px;">示例输入</h2><div class="data" style="padding: 0px; margin: 0px; font-family: 'Courier New', Courier, monospace; font-size: 16px; white-space: pre; line-height: 20px; border: 1px solid rgb(173, 173, 173); color: rgb(51, 51, 51); background-color: rgb(224, 224, 224);"><pre style="padding: 0px; margin-top: 0px; margin-bottom: 0px;">5 3 Jack01 2 2 3 Jone01 2 1 3 Anni02 1 1 Harry01 2 1 3 TBH27 1 1
示例输出
1 4 Anni02 Harry01 Jone01 TBH27 2 1 Jack01 3 3 Harry01 Jack01 Jone01
提示
来源
xam
示例程序
#include <iostream> #include <cstdio> #include <cstdlib> #include <cmath> #include <algorithm> #include <cstring> using namespace std; struct node { char name[10]; }; bool cmp(node a, node b) { return strcmp(a.name, b.name) < 0; } node course[2510][40010]; int num[2510]; int main() { int n, k; scanf("%d %d", &n, &k); int i, j; for(i = 0; i < n; i++) { char name[10]; scanf("%s", name); int c; scanf("%d", &c); int id; for(j = 0; j < c; j++) { scanf("%d", &id); strcpy(course[id][num[id]++].name, name); } } for(i = 1; i <= k; i++) { sort(course[i], course[i] + num[i], cmp); } for(i = 1; i <= k; i++) { printf("%d %d\n", i, num[i]); for(j = 0; j < num[i]; j++) { printf("%s\n", course[i][j].name); } } return 0; }
相关文章推荐
- 数据结构实验之排序七:选课名单
- 数据结构实验之排序七:选课名单
- 数据结构实验之排序七:选课名单
- 数据结构实验之排序七:选课名单
- 数据结构实验之排序七:选课名单
- 数据结构实验之排序七:选课名单
- 数据结构实验之排序七:选课名单
- SDUT3404 数据结构实验之排序七:选课名单
- 数据结构实验之排序七:选课名单
- SDUT-3404 数据结构实验之排序七:选课名单(快排)
- 数据结构实验之排序七:选课名单
- 数据结构实验之排序七:选课名单
- 3404 数据结构实验之排序七:选课名单
- sdut 3404 数据结构实验之排序七:选课名单
- 数据结构实验之排序七:选课名单
- SDUT OJ 3404 数据结构实验之排序七:选课名单
- 数据结构实验之排序七:选课名单(卡内存的一道题。。坑)
- 数据结构实验之排序七:选课名单
- 数据结构实验之排序七:选课名单
- 数据结构实验之排序七:选课名单