首页 > 其他 > 详细

QFNU-ACM 2020.10.30 Trating

时间:2020-11-08 22:23:15      阅读:32      评论:0      收藏:0      [点我收藏+]

A

n如果为偶数,输出n/2个‘2‘,n如果为奇数,n/2-2个,一个3

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

B

给出三个点的坐标,求能与这三个点组成平行四边形的点

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
#define ture true
int main() {

    int a1,a2,b1,b2,c1,c2;
    cin>>a1>>a2;
    cin>>b1>>b2;
    cin>>c1>>c2;

    cout<<3<<endl;
    cout<<a1+(b1-c1)<<" "<<a2+(b2-c2)<<endl;
    cout<<b1+(c1-a1)<<" "<<b2+(c2-a2)<<endl;
    cout<<c1+(a1-b1)<<" "<<c2+(a2-b2)<<endl;
    return 0;
}

D

判断出发地,与终点是否为一家机场,如果是输出0,不是输出1

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
#define ture true
int main() {

    int n,a,b;
    cin>>n>>a>>b;
    string s;
    cin>>s;
    if(s[a-1]!=s[b-1]){
        cout<<1<<endl;
    }else{
        cout<<0<<endl;
    }
    return 0;
}

E

让我们考虑以下生成整数序列的算法。一开始我们有一个由一个等于1的元素组成的序列。然后执行(n - 1)步。在每一步中,我们取上一步得到的序列,把它附加到它自身的末尾,并在中间插入我们以前没有用过的最小正整数。例如,第一步后得到序列[1,2,1],第二步后得到序列[1,2,1,3,1,2,1]。任务是在得到的序列中找到索引为k的元素的值(元素从1开始编号),即经过(n - 1)步。

找规律可得,k如果等于2i,输出i+1,否则k- 2i-1,继续循环比较

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
#define ture true
int main() {

    //0 1 1+0 2 2+0 2+1 2+1+0 3
    ll n,m,i,flag=0;
    cin>>n>>m;
    while(flag==0)
    {
        for(i=0;; i++)
        {
            if(m==pow(2,i))
            {
                cout<<i+1<<endl;
                flag=1;
                break;
            }
            else if(m<pow(2,i))
            {
                break;
            }
        }
        m-=pow(2,i-1);
        //cout<<"**"<<i-1<<endl;
    }

    return 0;
}

F

如果n=1,输出-1

n不为1,输出n,n+1,n*(n+1),此时等式一定成立

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
#define ture true
int main()
{
    int n;
    cin>>n;
    if(n==1){
        cout<<"-1"<<endl;
    }else{
    cout<<n<<" "<<n+1<<" "<<n*(n+1)<<endl;
    }


    return 0;
}

 

QFNU-ACM 2020.10.30 Trating

原文:https://www.cnblogs.com/a-specter/p/13945375.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!