View Code of Problem 5

#include<stdio.h>
int main()
{
	long int m,n,a[100000],b[100000],i,j,t,k,z,temp;
	scanf("%ld",&t);        //输入t行        
	while(t--)
	{
		scanf("%ld %ld",&n,&m);               //n为总篮子个数,m为选择篮子的个数 
		if(m<=n)
		{
			for(i=0;i<n;i++)
			{
				scanf("%ld %ld",&a[i],&b[i]);
			}
			for(i=0;i<m;i++)
			{
				temp=a[i];
				z=i;
				for(j=0;j<n;j++)
				{
					if(a[j]>temp)
					{
						k=j+1;
						temp=a[j];
						z=j;	
					}
					else if(a[j]==temp)
					{
						if(b[j]>b[z])
						{
							k=j+1;
							z=j;
								
						}
						else if(b[j]<b[z])
						{
							k=z+1;
							z=z;
						}	
						else if(b[j]==b[z])
						{
							if(j>z)
							k=z+1;
							z=z;		
						}
						temp=a[z];
					}
					else
					k=z+1;
		        }
		        printf("%ld ",k);
				a[k-1]=0;
			}
			printf("\n");
	    }
	    else
	    {
	    	printf("请重新选择!\n");
	    	t+=1;
	    	continue;
		}
    } 
	return 0;
}

Double click to view unformatted code.


Back to problem 5