2 条题解

  • 0
    @ 2024-5-6 22:04:21
    #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
      @ 2023-10-28 21:20:40

      鄙人程序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
      上传者