前几个回文质数顺序不太对怎么办呜呜
查看原帖
前几个回文质数顺序不太对怎么办呜呜
580804
Deepppp楼主2025/1/26 16:58
#include<iostream>
#include<cmath>
using namespace std;
int main(){
    int a, b;
	cin >> a >> b;
	for(int i = 1; i <= 9999; i++){
		int w = 0, ii = i;
		while(ii != 0){
			w += 1, ii /= 10;
		}
		bool is_second = true;
		for(int j = 1; j <= 2; j++){
			int hw = 0;
			if(is_second){
				is_second = false;
				if(w == 1){
					hw = i;
				}else if(w == 2){
					hw = i * 10 + i / 10;
				}else if(w == 3){
					hw = i * 100 + i / 100 + ((i % 100) / 10) * 10;
				}else{
					hw = i * 1000 + i / 1000 + ((i % 100) / 10) * 100 + ((i / 100) % 10) * 10;
				}
			}
			else{
				is_second = true;
				if(w == 1){
					hw = i + 10 * i;
				}else if(w == 2){
					hw = i * 100 + (i % 10) * 10 + i / 10;
				}else if(w == 3){
					hw = i * 1000 + (i % 10) * 100 + ((i % 100) / 10)* 10 + i / 100;
				}else{
					hw = i * 10000 + (i % 10) * 1000 + i / 1000 + ((i/100) % 10) * 10 + ((i % 100) / 10) * 100;
				}
			}
			bool is_zs = true;
			for(int k = 2; k * k <= hw; k++){
				if(hw % k == 0){
					is_zs = false;
					break;
				}
			}
			if(is_zs && hw >= a && hw <=b)cout << hw << endl;
		}
	}
    return 0;
}
2025/1/26 16:58
加载中...