Untitled
unknown
plain_text
4 years ago
806 B
6
Indexable
#include <iostream> #include <math.h> using namespace std; bool isPrime(int n) { if (n < 2) { return false; } for (int i = 2; i <= sqrt(n); i++) { if (n % i == 0) { return false; } } return true; } void mangSoHoanHao(long long arr[]) { arr[0] = 6; int j = 1, temp; for (int i = 3; i <= 31; i++) { temp = pow(2, i) - 1; if (isPrime(temp)) { arr[j] = pow(2, i - 1) * temp; j++; } } } int kiemTraSoHoanHao(long long n, long long arr[]) { for (int i = 0; i < 8; i++) { if (n < arr[i]) return 0; if (n == arr[i]) return 1; } return 0; } int main() { short T; //So luong bo test cin >> T; long long soHoanHao[8]; mangSoHoanHao(soHoanHao); long long n; while (T--) { cin >> n; cout << kiemTraSoHoanHao(n, soHoanHao) << endl; } return 0; }
Editor is loading...