博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
hdu 1031 Design T-Shirt
阅读量:5221 次
发布时间:2019-06-14

本文共 3085 字,大约阅读时间需要 10 分钟。

Design T-Shirt

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)

Total Submission(s): 7637    Accepted Submission(s): 3616

Problem Description
Soon after he decided to design a T-shirt for our Algorithm Board on Free-City BBS, XKA found that he was trapped by all kinds of suggestions from everyone on the board. It is indeed a mission-impossible to have everybody perfectly satisfied. So he took a poll to collect people's opinions. Here are what he obtained: N people voted for M design elements (such as the ACM-ICPC logo, big names in computer science, well-known graphs, etc.). Everyone assigned each element a number of satisfaction. However, XKA can only put K (<=M) elements into his design. He needs you to pick for him the K elements such that the total number of satisfaction is maximized.
 

 

Input
The input consists of multiple test cases. For each case, the first line contains three positive integers N, M and K where N is the number of people, M is the number of design elements, and K is the number of elements XKA will put into his design. Then N lines follow, each contains M numbers. The j-th number in the i-th line represents the i-th person's satisfaction on the j-th element.
 

 

Output
For each test case, print in one line the indices of the K elements you would suggest XKA to take into consideration so that the total number of satisfaction is maximized. If there are more than one solutions, you must output the one with minimal indices. The indices start from 1 and must be printed in non-increasing order. There must be exactly one space between two adjacent indices, and no extra space at the end of the line.
 

 

Sample Input
3 6 4
2 2.5 5 1 3 4
5 1 3.5 2 2 2
1 1 1 1 1 10
3 3 2
1 2 3
2 3 1
3 1 2
 

 

Sample Output
6 5 3 1
2 1
 

 

Author
CHEN, Yue
 

 

Source
 

 

Recommend
Ignatius.L   |   We have carefully selected several similar problems for you:            
 
简单排序,注意题意,以及输入的测试数据有小数点,所以是double型。
 
题意:给出n个人对m件T恤的满意度,按编号降序输出这m件T恤中综合满意度前k大的。多组输入,每组用例第一行为三个整数n,m,k,之后一个n*m矩阵表示n个人对m件T恤的满意度,以文件尾结束输入。对于每组用例,输出综合满意度前k大的(按编号降序输出) 。
 
附上代码:
 
1 #include 
2 #include
3 #include
4 #include
5 using namespace std; 6 struct node 7 { 8 int t; 9 double w;10 } ss[10005];11 bool cmp1(node a,node b)12 {13 return a.w>b.w;14 }15 bool cmp2(node a,node b)16 {17 return a.t>b.t;18 }19 int main()20 {21 int n,m,i,j,k;22 double s;23 while(~scanf("%d%d%d",&n,&m,&k))24 {25 memset(ss,0,sizeof(ss));26 for(j=1; j<=n; j++)27 {28 for(i=1; i<=m; i++)29 {30 ss[i].t=i;31 scanf("%lf",&s);32 ss[i].w+=s; //每件衣服每个人的满意度累加33 }34 }35 36 sort(ss+1,ss+m+1,cmp1); //满意度从大到小排序37 sort(ss+1,ss+k+1,cmp2); //输出序号从大到小排序38 for(i=1; i<=k; i++)39 {40 if(i!=1) printf(" ");41 printf("%d",ss[i].t);42 }43 printf("\n");44 }45 return 0;46 }

 

转载于:https://www.cnblogs.com/pshw/p/5358558.html

你可能感兴趣的文章
c++ map
查看>>
exit和return的区别
查看>>
js += 含义(小知识)
查看>>
B2321 [BeiJing2011集训]星器 数学&&物理
查看>>
201571030319 四则运算
查看>>
RestTemplate 调用本地服务 connection refused
查看>>
.NET方向高级开发人员面试时应该事先考虑的问题
查看>>
台达PLC modbus 不支持04功能码
查看>>
python学习笔记--装饰器
查看>>
发布一个JavaScript工具类库jutil,欢迎使用,欢迎补充,欢迎挑错!
查看>>
discuz 常用脚本格式化数据
查看>>
MS CRM 2011 创建基于Fetch的报表 -- 进阶版
查看>>
洛谷P2777
查看>>
PHPStorm2017设置字体与设置浏览器访问
查看>>
SQL查询总结 - wanglei
查看>>
安装cocoa pods时出现Operation not permitted - /usr/bin/xcodeproj的问题
查看>>
makefile中使用变量
查看>>
GIT笔记:将项目发布到码云
查看>>
JavaScript:学习笔记(7)——VAR、LET、CONST三种变量声明的区别
查看>>
JavaScript 鸭子模型
查看>>