ARC116

A-Odd vs Even
\(\quad\)因为是第一人题所以说比较简单。
\(\quad\)用小学老师交给我们的方法将一个数因数分解,这个数可以表示为多组数相乘。
\(\quad\)而我们知道

  • \(Odd * Odd = Odd\)
  • \(Odd * Even = Even\)
  • \(Even * Even = Even\)

\(\quad\)那么现在我们发现如果这个数是一个\(Odd\)那么它的所有因数都是\(Odd\)那我们就不需要思考直接输出\(Odd\)就可以了
\(\quad\)但如果这个数是\(Even\)呢?我们需要判断一下是否可能出现\(Even * Even = Even\)的情况。
\(\quad\)一个数能分为\(Even * Even\)那就说明这个数里面包含两个\(2\),所以我们就可以很轻松的解决这道题目了。
\(\quad\)关于这个数是完全平方数也是这个道理,不难证明。

code

#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<string>
#include<algorithm>
#include<cmath>
#include<ctime>
#include<climits>
#include<sstream>
using namespace std;
#define int long long

signed main()
{
    ios::sync_with_stdio(false);
    int t;
    cin >> t;
    for(register int i = 1 ; i <= t ; i++)
    {
        int n;
        cin >> n;
        if(n % 2 != 0)
        {
            cout << "Odd" << endl;
        }
        if(n % 2 == 0 && n % 4 != 0)
        {
            cout << "Same" << endl;
        }
        if(n % 4 == 0)
        {
            cout << "Even" << endl;
        }
    }
    return 0;
}
上一篇:C# 网络加密与解密


下一篇:Linux系统下安装phpmyadmin方法