• 第一次考试题解


    T1

    数字配对

    #include<iostream>
    #include<iomanip>
    #include<cstdio>
    #include<cmath>
    #include<cstring>
    #include<string>
    #include<algorithm>
    using namespace std;
    int n,num[10001],m,a[5001];
    int main(){
        cin>>n;
        m=n/2;
        for(int i=1;i<=n;i++)cin>>num[i];//正常输入
        sort(num + 1,num+n+1);//排个序
        int max=num[1];//存放ans
        for (int i=1;i<=m;i++)
          if(num[i]+num[n-i+1]>=max){
              max=num[i]+num[n-i+1];
          }
        cout<<max<<endl;//末尾换行
        return 0;
    }

    T2

    选票统计

    #include<iostream>
    #include<iomanip>
    #include<cstdio>
    #include<cmath>
    #include<cstring>
    #include<string>
    #include<algorithm> using namespace std; long long bj,n,shu; long long a[10005]; int main(){ scanf("%lld",&n); for(int i=0;i<n;i++){ cin>>a[i]; } sort(a,a+n); for(int i=0;i<n;i++){ if(a[i]!=a[i-1]){ if(shu>n/4) { cout<<a[i-1]<<endl; bj=1; } shu=1; }else{ shu++; } } if(shu>n/4){ cout<<a[n-1]<<endl; bj=1; } if(bj==0){ cout<<"No such person."<<endl; } return 0; }

    T3

    成绩单

    这个题没什么好说的,就是多注意细节

    #include<iostream>
    #include<iomanip>
    #include<cstdio>
    #include<cmath>
    #include<cstring>
    #include<string>
    #include<algorithm>
    using namespace std;
    int n,k[17];
    string h[130001];
    struct Per{
        string name;
        int num;
    };Per p[130001];
    int cmp(Per a,Per b){
        return a.name<b.name;
    }
    int main(){
        cin>>n;
        for (int i=0;i<n;i++)
          cin>>p[i].name>>p[i].num;
        sort(p,p+n,cmp);
        for (int i=0;i<n;i++){
            if (p[i].num>=1&&p[i].num<=9)
              k[1]++;
            else if (p[i].num >= 10 && p[i].num <= 19)
              k[2] ++;
            else if (p[i].num >= 20 && p[i].num <= 29)
              k[3] ++;
            else if (p[i].num >= 30 && p[i].num <= 39)
              k[4] ++;
            else if (p[i].num >= 40 && p[i].num <= 49)
              k[5] ++;
            else if (p[i].num >= 50 && p[i].num <= 59)
              k[6] ++;
            else if (p[i].num >= 60 && p[i].num <= 69)
              k[7] ++;
            else if (p[i].num >= 70 && p[i].num <= 79)
              k[8] ++;
            else if (p[i].num >= 80 && p[i].num <= 89)
              k[9] ++;
            else if (p[i].num >= 90 && p[i].num <= 99)
              k[10] ++;
            else if (p[i].num >= 100 && p[i].num <= 109)
              k[11] ++;
            else if (p[i].num >= 110 && p[i].num <= 119)
              k[12] ++;
            else if (p[i].num >= 120 && p[i].num <= 129)
              k[13] ++;
            else if (p[i].num >= 130 && p[i].num <= 139)
              k[14] ++;
            else if (p[i].num >= 140 && p[i].num <= 149)
              k[15] ++;
            else if (p[i].num == 150)
              h[k[16] ++] = p[i].name;
        }
        cout<<"1~9 10~19 20~29 30~39 40~49 50~59 60~69 70~79 80~89 90~99 100~109 110~119 120~129 130~139 140~149 ";
        for(int i=1;i<=14;i++)
          cout<<k[i]<<" ";
        cout<<k[15]<<endl;
        for(int i=0;i<n;i++)
          cout<<p[i].name<<" "<<p[i].num<<endl;
        cout<<k[16]<<endl;
        if (k[16]==0)
          cout<<"No ";
        else
          for(int i=0;i<k[16];i++)cout<<h[i]<<endl;
        return 0;
    }

    T4

    字符串的修改

    #include<iostream>
    #include<iomanip>
    #include<cstdio>
    #include<cmath>
    #include<cstring>
    #include<string>
    #include<algorithm> using namespace std; long long dp[1005][1005],ac,bc,bj; char a[1005],b[1005]; int main(){ cin>>a+1>>b+1; ac=strlen(a+1); bc=strlen(b+1); for(int i=1;i<=ac;i++){//切记初始化 dp[i][0]=0; } for(int i=1;i<=bc;i++){ dp[0][i]=i; } for(int i=1;i<=ac;i++){ for(int j=1;j<=bc;j++){ if(a[i]==b[j]){ bj=0; }else{ bj=1; } dp[i][j]=min(dp[i-1][j-1]+bj,min(dp[i][j-1]+1,dp[i-1][j]+1)); } } cout<<dp[ac][bc]<<endl; return 0; }
  • 相关阅读:
    vfork与fork的区别
    常见的六种设计模式以及应用场景
    Java中常见的集合类比较
    排序——总结
    排序——交换排序
    排序——选择排序
    排序——归并排序
    排序——基数排序
    排序——插入排序
    设计模式
  • 原文地址:https://www.cnblogs.com/hells/p/12879356.html
Copyright © 2020-2023  润新知