Mùng 1
Xem dạng PDF
Gửi bài giải
Điểm:
5,00 (OI)
Giới hạn thời gian:
1.1s
Giới hạn bộ nhớ:
256M
Input:
stdin
Output:
stdout
Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Kotlin, Pascal, PyPy, Python, Scratch
Cho một số nguyên dương ~N~, kiểm tra ~N~ có phải là tích của 2 hay nhiều số tự nhiên bất kì hay không?
2 số bất kì này khác N
Nếu không phải hãy in ra 'AC' ngược lại hãy in ra 'WA'
Dữ liệu vào:
- Dòng 1: Số nguyên dương ~N~ (~N \le 4.10^{16}~)
Dữ liệu ra:
- Dòng 1: Yêu cầu của bài toán
Ràng buộc
- 60% số test: ~N \le 10^{8}~
- 40% số test: không có ràng buộc gì thêm
Example
Input
7
Output
AC
Input
9
Output
WA
Bình luận
include <bits/stdc++.h>
using namespace std; bool nt(long long n) { if (n < 2) return false; if (n < 4) return true;
if (n % 2 == 0) return false;
for (long long i = 3; i <= n / i; i += 2) { if (n % i == 0) return false; } return true; } int main() { long long n; cin >> n; if (nt(n)) { cout << "AC" << endl; } else { cout << "WA" << endl; } return 0; }
include <bits/stdc++.h>
using namespace std; bool nt(long long n) { if (n < 2) { return false; } for (long long i = 2; i * i <= n; i++) { if (n % i == 0) { return false;} } return true; } int main() { long long n; cin >> n; if (n == 1 || nt(n)) { cout << "AC" << endl; } else { cout << "WA" << endl; } return 0; }