没什么好的说的啦,简简单单的贪心,这几天有事情, 下次更新
# include<cstdio>
# include<iostream>
# include<algorithm>
# include<cstring>
using namespace std;
# define MAX 100
struct node
{
int id;
int time;
}a[MAX];
int cmp ( const node & x,const node & y )
{
return (x.time)<(y.time);
}
int main(void)
{
int n,k;
while ( cin>>n>>k )
{
memset(a,0,sizeof(a));
for ( int i = 1;i <= n;i++ )
{
cin>>a[i].time;
a[i].id = i;
}
sort(a+1,a+n+1,cmp);
int sum = 0;
int ans = 0;
for ( int i = 1;i <= n;i++ )
{
sum+=a[i].time;
if ( sum > k)
{
break;
}
ans++;
}
if ( ans!=0 )
{
cout<<ans<<endl;
for ( int i = 1;i <= ans;i++ )
{
cout<<a[i].id<<" ";
}
cout<<endl;
}
else
cout<<"0"<<endl;
}
return 0;
}