Contest2661 - 2021ACM俱乐部后备营个人训练赛第6场

Contest2661 - 2021ACM俱乐部后备营个人训练赛第6场

问题 C: 找画笔

思路

以数组的形式读入,用sort快排,遍历数组,比较两个数是否相同,不同则输出,输出则循环。

代码

#include <bits/stdc++.h>
 
using namespace std;
 
int main()
{
    
    
    int n,a[1000000];
    cin>>n;
    for(int i=0;i<n;++i)
        cin>>a[i];
    sort(a,a+n);
    for(int i=0;i<n; )
    {
    
    
        if(a[i]==a[i+1])
            i +=2;
        else{
    
    
            cout<<a[i];
            break;
        }
    }
    return 0;
}

问题 E: 打印图形Ⅴ

思路

找规律就行,我分成两半部分做的,比较复杂,有更简单的方法的话,dalao们教教我呗

代码

#include <bits/stdc++.h>
 
using namespace std;
 
int main()
{
    
    
    int i,j,n;
    cin>>n;
    for(j=1;j<2*n;++j)
    {
    
    
        if(j<=n)
        {
    
    
            for(i=1;i<=n-j;++i)
                cout<<" ";
            for(i=1;i<=j;++i)
                cout<<(char)('A'+n-i);
            for(i=1;i<=j-1;++i)
                cout<<(char)('A'+n+i-j);
        }
        else
        {
    
    
            for(i=1;i<=j-n;++i)
                cout<<" ";
            for(i=1;i<=(2*n-j);++i)
                cout<<(char)('A'+n-i);
            for(i=1;i<=(2*n-j)-1;++i)
                cout<<(char)('A'+n+i-(2*n-j));
        }
        cout<<endl;
    }
    return 0;
}

问题 F: 数列计算IV

思路

分别记录分子,分母,第二个分数的分子第是一个数的分母,第二个分数的分母是第一个数分子,分母的和

代码

#include <bits/stdc++.h>
 
using namespace std;
 
int main()
{
    
    
    int n;
    cin>>n;
    int a=1,b=2,temp=0;
    cout<<a<<"/"<<b<<" ";
    --n;
    while(--n)
    {
    
    
        temp=a+b;
        a=b;
        b=temp;
        cout<<a<<"/"<<b<<" ";
    }
    temp=a+b;
    a=b;
    b=temp;
    cout<<a<<"/"<<b;
    return 0;
}

问题 G: 完全平方数II

思路

简单判断,三位数拆分

代码

#include <bits/stdc++.h>
 
using namespace std;
 
bool square(int num) {
    
    
    int m=floor(sqrt(num)+0.5);
    if(m*m==num)
        return true;
    else
        return false;
 
}
 
int main()
{
    
    
    int m,n,i;
    int ge,shi,bai;
    int count=0;
    cin>>m>>n;
    for(i=m;i<=n;++i)
    {
    
    
        ge = i%10;
        shi = (i/10)%10;
        bai = i/100;
        if(square(i))
        {
    
    
            if((ge==shi) || (shi==bai) || (ge==bai))
            {
    
       ++count;
                cout<<i<<endl;
            }
        }
    }
    cout<<count;
    return 0;
}

猜你喜欢

转载自blog.csdn.net/m0_51344172/article/details/112636651