云中


私信TA

用户名:dotcpp0657397

访问量:656

签 名:

等  级
排  名 3159
经  验 2014
参赛次数 0
文章发表 8
年  龄 0
在职情况 学生
学  校
专  业

  自我简介:

TA的其他文章

解题思路:

注意事项:

参考代码:

#include<stdio.h>
#include<string.h>
int main()
{
    int m,n,k=0;
    scanf("%d %d",&n,&m);
    m=(int)m*1.5;//取整
 
    int A[n][2];//输入
    for(int i=0;i<n;i++)
    scanf("%d %d",&A[i][0],&A[i][1]);
    
    for(int i=0;i<n;i++)//排序
        for(int j=i+1;j<n;j++)
        {
            if(A[i][1]<A[j][1])
            {
                int t[2]={A[i][0],A[i][1]};
                memcpy(t,A[i],sizeof(t));
                memcpy(A[i],A[j],sizeof(A[i]));
                memcpy(A[j],t,sizeof(t));
            }
            if(A[i][1]==A[j][1])
                if(A[i][0]>A[j][0])
                {
                    int t[2]={A[i][0],A[i][1]};
                    memcpy(t,A[i],sizeof(t));
                    memcpy(A[i],A[j],sizeof(A[i]));
                    memcpy(A[j],t,sizeof(t));
                }
             
        }
    int t=m-1;
    while(A[t][1]==A[t+1][1])//计算重分的个数
    {
        k++;
        t++;
    }
    
    printf("%d %d\n",A[m-1][1],m+k);
    for(int i=0;i<m+k;i++)
    printf("%d %d\n",A[i][0],A[i][1]);
    return 0;
}


 

0.0分

0 人评分

  评论区

  • «
  • »