Hãy luôn nhớ cảm ơn và vote 5*
nếu câu trả lời hữu ích nhé!
/* Quang VIPPRO */
#include <bits/stdc++.h>
using namespace std;
const int maxN = 1e6;
int n, nt, cp;
int snt[1000100];
void sieve(){
for(int i = 2; i <= maxN; i++)snt[i] = true;
for(int i = 2; i * i <= maxN; i++){
if(snt[i]){
for(int j = i * i; j <= maxN; j += i){
snt[j] = false;
}
}
}
}
int main(){
cin >> n;
sieve();
for(int i = 1; i <= n; i++){
int a;
cin >> a;
if(snt[a])nt++;
int tmp = sqrt(a);
if(tmp * tmp == a)cp++;
}
cout << cp << '\n' << nt;
}
Hãy giúp mọi người biết câu trả lời này thế nào?
#include <bits/stdc++.h>
using namespace std;
bool check (long long x)
{
for (long long i = 2; i <= sqrt(x); ++i)
if (x % i == 0) return false;
return x > 1;
}
bool cp (long long n)
{
long long k = sqrt(n);
return k * k == n;
}
long long tt, d = 0, d1 = 0;
int main() {
cin >> tt;
while (tt--)
{
long long n;
cin >> n;
if (check(n)) d++;
else if (cp(n) and n != 1) d1++;
}
cout << d1 << '\n' << d;
return 0;
}
Hãy giúp mọi người biết câu trả lời này thế nào?
CÂU HỎI MỚI NHẤT
bài này làm kieue gì ạaa
32
835
18
hnhu test lỗi số lg số CP trong dãy là 2 mà test ghi là 1
726
9763
336
hình như 1 cũng số là chính phương bạn ạ