2 条题解
-
0
#include <bits/stdc++.h> using namespace std; int n,ans; string a[110]; long long binary(string n,int y){ long long sum=0,t=1; for (int i=(int)n.size()-1;i>=0;i--){ if (isalpha(n[i]))sum+=(n[i]-'A'+10)*t; else if (isdigit(n[i]))sum+=(n[i]-'0')*t; t*=y; } return sum; } bool isprime(long long x){ for (int i=2;i<=sqrt(x);i++){ if (x%i==0)return false; } return true; } int main(){ cin>>n; for (int i=1;i<=n;i++){ cin>>a[i]; if (isprime(binary(a[i],2)))ans++; } cout<<ans; return 0; }
-
0
鄙人程序3个Wonderful Answer(WA),请各位大佬改一下
#include <iostream> #include <cmath> using namespace std; bool prime(int x){ if(x<2)return false; for(int i=2;i*i<=x;i++)if(!(x%2))return false; return true; } int dec(string s){ int sum=0; for(int i=0;i<s.length();i++)sum+=(s[i]-'0')*pow(2,s.length()-i-1); return sum; } int main(){ int n,cnt=0; string s; cin>>n; for(int i=1;i<=n;i++){cin>>s;cnt+=prime(dec(s));} cout<<cnt<<endl; return 0; }
- 1
信息
- ID
- 402
- 时间
- 1000ms
- 内存
- 16MiB
- 难度
- 5
- 标签
- 递交数
- 35
- 已通过
- 16
- 上传者