66pts求调

P1217 [USACO1.5] 回文质数 Prime Palindromes

M15388049303 @ 2024-06-07 12:41:20

#include<bits/stdc++.h>
using namespace std;
bool is_prime(long long n) {
    if(n<=1) {
        return 0;
    }
    for(long long i=2; i*i<=n; i++) {
        if(n%i==0)return 0;
    }
    return 1;
}
bool hws(long long n) {
    string s=to_string(n);
    for(long long i=0,j=s.size()-1; i<s.size(); i++,j--) {
        if(s[i]!=s[j])return 0;
    }
    return 1;
}
long long a,b;
int main() {
    cin>>a>>b;
    for(long long i=a; i<=b; i++) {
        if(is_prime(i)==1&&hws(i)==1) {
            cout<<i<<endl;
        }
    }
    return 0;
}

by xi_c @ 2024-06-10 12:36:15

可以尝试用数组储存数然后用^来判断是不是回文数,另外在main函数里面的for循环加入判断是否是奇数因为偶数不是质数


|