首页 > 其他 > 详细

题解 SP1112 【NSTEPS - Number Steps】

时间:2019-09-14 00:50:01      阅读:90      评论:0      收藏:0      [点我收藏+]

技术分享图片

明显图中数字组成组成了两条线,一条线上的数字满足y=x,另一条满足y=x-2。所以只要x!=y且x!=y+2就输出无解就行了。再看线上的数字,我们可以把\(a_{n}\)\(a_{n+1}\)分为一组,可以看出\(a_{n}+1=a_{n+1},a_{n}+4=a_{n+2}\)(n为偶数)。
于是就可以很简单地推出两条线的公式了。

左线:k=(x/2)*4+x%2

右线:k=(y/2)*4+2+y%2

然后就可以写出代码了:

#include<bits/stdc++.h>
using namespace std;
int main(){
    int t,x,y;
    cin>>t;
    for(int i=0;i<t;i++){
        cin>>x>>y;
        if(x==y)
            cout<<(x/2)*4+x%2<<endl;
        else if(x==y+2)
            cout<<(y/2)*4+2+y%2<<endl;
        else 
            cout<<"No Number"<<endl;
    }
    return 0;
}

题解 SP1112 【NSTEPS - Number Steps】

原文:https://www.cnblogs.com/juruoyqr/p/11518066.html

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