晕……之前的还是有 bug ,这下应该是没问题了,
我这输入的格式是
2 5 //表示有两个武器,输出第 5 小的血量
2 2 //第一个武器是 2 2
1 7 //第二个武器是 1 7
然后输出
12 //第 5 小血量是 12
#include <stdio.h>
int main()
{
int n,k,c,d;
int t=0;
int judge=1;
int y;
int i,j,p=0;
int b[100]={0};
scanf("%d%d",&n,&k);
int a[100][2];
for(i=0;i<n;i++)
scanf("%d%d",&a[i][0],&a[i][1]);
c = k;
do
{
t++;
for(i=0;i<n;i++)
{ judge = 1;
for(j=0;j<p;j++)
if(b[j] == a[i][0] + a[i][1] * t)
judge = 0;
if(judge == 0)
continue;
else
{
b[p] = a[i][0] + a[i][1] * t;
p++;
}
}
}while(t <= c+1);
for(i=0;i<p-1;i++)
for(j=0;j<p-1;j++)
{
if(b[j]>b[j+1])
{
d = b[j];
b[j] = b[j+1];
b[j+1] = d;
}
}
printf("%d\n\n",b[k-1]);
for(i=0;i<k;i++)
printf("%d ",b[i]);
return 0;
}