PAT B1114 全素日

#include<iostream>
#include<cmath>
#include<iomanip>
using namespace std;
bool isPrime(int n) {
    if (n < 2) {
        return false;
    }
    else {
        for (int i = 2; i <= sqrt(n); i++) {
            if (n % i == 0)
                return false;
        }
    }
    return true;
}
int main() {
    int n;
    bool flag = true;
    cin >> n;
    for (int i = 8; i >= 1; i--) {
        n %= (int)pow(10.0, i);
        cout << setw(i) << setfill('0') << n;
        if (isPrime(n)) {
            cout << " Yes" << endl;
        }
        else {
            cout << " No" << endl;
            flag = false;
        }
    }
    if (flag == true) {
        cout << "All Prime!";
    }
    return 0;
}

顯然,下面這種方法更好,省去了前補0等一些的麻煩,柳神不愧是柳神,簡潔高效。

#include <iostream>
#include <cmath>
using namespace std;
int num;
string s;
int is_prime(int x) {
    if (x < 2) return 0;
    for (int i = 2; i <= sqrt(x); i++)
        if (x % i == 0) return 0;
    return 1;
}
int main(){
    cin >> s;
    num = s.size();
    while (s.size()) {
        cout << s << ' ' << (is_prime(stoi(s)) ? "Yes" : "No") << '\n';
        if (is_prime(stoi(s))) --num;
        s.erase(s.begin());
    }
    if (num == 0) cout << "All Prime!";
    return 0;
}
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容