• QFNU-ACM 2020.11.6 Trating


    A

    输入,第i个人把礼物给了谁,输出,第i个人的礼物是谁给的

    #include<bits/stdc++.h>
    using namespace std;
    typedef long long ll;
    #define ture true
    int main() {
    
        int n,flag=0,a[200],b,i;
        cin>>n;
        for(i=1;i<=n;i++){
            cin>>b;
            a[b]=i;
        }
        for(i=1;i<=n;i++){
            if(i==1){
                cout<<a[i];
    
            }else{
                cout<<" "<<a[i];
            }
        }
    
        return 0;
    }

    B

    给出两个十进制数啊a,c,分别转换成三进制,c-a,不考虑借位,从各位逐一相减,最后将结果转换为十进制

    #include<bits/stdc++.h>
    using namespace std;
    typedef long long ll;
    #define ture true
    int main()
    {
        ll a,b,c,i=0,j=0,mod=1;
    
        cin>>a>>c;
        int a1[100]={0},c1[100]={0},b1[100];
        while(a){
            a1[i]=a%3;
            a=a/3;
            i++;
        }
        while(c){
            c1[j]=c%3;
            c=c/3;
            j++;
        }
        for(int k=0;k<max(i,j);k++){
            b1[k]=(c1[k]+3-a1[k])%3;
        }
        int sum=0;
        for(int k=0;k<max(i,j);k++){
            sum+=b1[k]*mod;
            mod*=3;
        }
        cout<<sum<<endl;
        return 0;
    }

    C

    将所给序列排序,如果序列最大的为1,将最后一个1 变成2,

    否则,将最大的变成1;

    #includeJI<bits/stdc++.h>
    using namespace std;
    typedef long long ll;
    #define ture true
    int a[100010];
    int main()
    {
    
        int n,i;
        cin>>n;
        for(i=0;i<n;i++){
            cin>>a[i];
        }
        int flag=0;
        sort(a,a+n);
    
        if(a[n-1]!=1){
            cout<<1;
        }else{
            flag=2;
        }
    
        for(i=0;i<n-1;i++){
            if(flag==2&&i==0){
                cout<<a[i];
            }else{
                cout<<" "<<a[i];
            }
    
        }
        if(flag==2){
            cout<<" "<<flag;
        }
        return 0;
    }

    D

     给定一个字符串,"A", "O", "Y", "E", "U", "I"(包括小写)不输出,其他字母大写变成小写,小写不变,每个字母前插入一个‘.’输出

    #include<bits/stdc++.h>
    using namespace std;
    typedef long long ll;
    #define ture true
    int main()
    {
    
        string s;
        cin>>s;
        int len=s.length();
        for(int i=0; i<len; i++)
        {
            if(s[i]=='a'||s[i]=='e'||s[i]=='i'||s[i]=='o'||s[i]=='u'||s[i]=='y'||
                    s[i]=='A'||s[i]=='E'||s[i]=='I'||s[i]=='O'||s[i]=='U'||s[i]=='Y')
            {
    
            }
            else if(s[i]>='A'&&s[i]<='Z')
            {
                cout<<'.'<<char(s[i]-'A'+'a');
            }
            else
            {
                cout<<'.'<<s[i];
            }
        }
        return 0;
    }

    E

    按照这个格式输出

    Input

    3(范围2~9,好像可以直接打表?)

    Output

          0
        0 1 0
      0 1 2 1 0
    0 1 2 3 2 1 0
      0 1 2 1 0
        0 1 0
          0

    #include<bits/stdc++.h>//写的好麻烦啊QWQ
    using namespace std;
    typedef long long ll;
    #define ture true
    int main()
    {
    
        int n,i,j;
        cin>>n;
        for(i=0;i<n*2+1;i++){
            for(j=0;j<n*2+1;j++){
                if(j==0){
                    if(i==n){
                        cout<<"0";
                    }else
                    {
                        cout<<" ";
                    }
                }
                else
                {
                    if(j>=n-i&&i<=n)
                    {
                        if(i<n)
                        {
                            for(int k=0; k<i%(n+1); k++)
                            {
                                cout<<" "<<k;
                            }
                            for(int k=i%(n+1); k>=0; k--)
                            {
                                cout<<" "<<k;
                            }
                        }
                        else if(i==n)
                        {
                             for(int k=1; k<i%(n+1); k++)
                            {
                                cout<<" "<<k;
                            }
                            for(int k=i%(n+1); k>=0; k--)
                            {
                                cout<<" "<<k;
                            }
    
                        }
                        break;
    
                    }
                    else if(i>n&&j>=i%(n+1)+1)
                    {
                        for(int k=0; k<n-i%(n+1)-1; k++)
                        {
                            cout<<" "<<k;
                        }
                        for(int k=n-i%(n+1)-1; k>=0; k--)
                        {
                            cout<<" "<<k;
                        }
                        break;
    
                    }
                    else
                    {
                        cout<<"  ";
                    }
    
                }
            }
            cout<<endl;
        }
        return 0;
    }
  • 相关阅读:
    计算机编程基础
    css3 压缩及验证工具
    BFC
    【原创】bootstrap框架的学习 第五课
    曼珠沙华
    仓央嘉措
    waiting for spring......
    一天
    21-chttp连接池该取多大
    守护线程会不会执行finally?默认情况new thread怎么样确定守护状态?
  • 原文地址:https://www.cnblogs.com/a-specter/p/13977784.html
Copyright © 2020-2023  润新知