6 条题解
-
0
前面几位大佬的log我不咋懂,所以我直接暴力打出奇迹。 代码:
#include<bits/stdc++.h>
using namespace std;
long long n;
int main(){
cin>>n;
long long num=n*n;
if(n<10) num%=10;
else if(n<100) num%=100;
else if(n<1000) num%=1000;
else if(n<10000) num%=10000;
else if(n<100000) num%=100000;
else if(n<1000000) num%=1000000;
else if(n<10000000) num%=10000000;
else if(n<100000000) num%=100000000;
else if(n<1000000000) num%=1000000000;
if(num==n) cout<<"yes";
else cout<<"no";
return 0;
}
-
0
这么水的题目, 行代码解决!
先求出 的位数 :log10(n)+1,然后记录 为 然后比较它们的后 位是否相同即可。代码:
#include<bits/stdc++.h> #define int long long #define INF 0x3f3f3f using namespace std; int n; signed main(){ cin>>n; int s=log10(n)+1; int m=n*n; while(s--){ if(m%10!=n%10){ cout<<"NO"; return 0; } m/=10;n/=10; } cout<<"YES"; return 0; } -
0
C++ :
#include <bits/stdc++.h> using namespace std; long long n,s; int main(){ cin >> n; s=n*n; int k=n,i=1; while(k!=0){ k = k/10; i = i*10; } if((s-n)%i==0){ cout << "YES"; } else{ cout << "NO"; } return 0; }Python :
# coding=utf-8 n=int(input()) k=n*n f=1 while(n>0): if(k%10!=n%10): f=0 k=k//10 n=n//10 if(f==0): print('NO') else: print('YES')
- 1
信息
- ID
- 10
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 6
- 标签
- 递交数
- 203
- 已通过
- 68
- 上传者