思路
题目不是很难,但错了好多次
都怪题目太狡猾
思路很简单,直接按照题意来就行了,但很容易被骗,看来语文水平竟也是Coder的硬伤。
Code
#include<cstdio>
#include<algorithm>
using namespace std;
struct Node
{
int id,w;
}p[20005];
int n,k,E[11];
bool cmp(Node a,Node b)
{
if(a.w==b.w)
return a.id<b.id;
return a.w>b.w;
}
int main()
{
scanf("%d%d",&n,&k);
for(int i=1;i<=10;i++) scanf("%d",&E[i]);
for(int i=1;i<=n;i++)
{
scanf("%d",&p[i].w);
p[i].id=i;
}
sort(p+1,p+1+n,cmp);
for(int i=1;i<=n;i++)
p[i].w+=E[(i-1)%10+1];
sort(p+1,p+1+n,cmp);
for(int i=1;i<=k;i++) printf("%d ",p[i].id);
return 0;
}
本文分享了一个编程挑战的经验,通过分析题目陷阱,提供了详细的解题思路和代码实现。强调了理解题目意图的重要性,即使对于相对简单的题目,也需要细致地分析,避免被误导。代码中使用了C++进行解答,涉及排序和数组操作。
1579

被折叠的 条评论
为什么被折叠?



