Trang chủ Tin Học Lớp 9 Một số nguyên dương X được gọi là số đặc...

Một số nguyên dương X được gọi là số đặc biệt nếu thỏa mãn 2 điều kiện sau: X là số nguyên tố. Số lượng số chẵn và số lẻ trong X là khác nhau. Yêu cầu: Cho m

Câu hỏi :

Một số nguyên dương X được gọi là số đặc biệt nếu thỏa mãn 2 điều kiện sau: • X là số nguyên tố. • Số lượng số chẵn và số lẻ trong X là khác nhau. Yêu cầu: Cho một dãy số nguyên gồm N phần tử A1, A2, …, AN. Hãy đếm số lượng số đặc biệt ở trong dãy A. Input • Dòng thứ nhất ghi số nguyên dương N. • Dòng thứ hai chứa N số nguyên A1, A2, …, AN. Các số nguyên cách nhau 1 dấu cách. Output: ghi số nguyên duy nhất là số lượng số đặc biệt đếm được. Subtask • 60% test có 1 ≤ n ≤ 300; 1 ≤ Ai ≤ 50 000 • 20% test có 1 ≤ n ≤ 300; 1 ≤ Ai ≤ 1012 • 20% test có 1 ≤ n ≤ 2 * 106; 1 ≤ Ai ≤ 2 * 106 Ví dụ: Input Output Giải thích 5 121 311 122 23 241 2 Dãy A có hai số đặc biệt là 311 và 241

Lời giải 1 :

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
bool nt(ll n)
{
    for(ll i=2;i<=sqrt(n);++i)
    {
        if(n%i==0)
            return false;
    }
    return true;
}
ll cl(ll n)
{
    ll c=0; ll l=0;
    while(n!=0)
    {
        ll k=n%10;
        if(k%2==0)
        {
            c++;
        }
        else
        {
            l++;
        }
        n/=10;
    }
    return c!=l;
}
int main()
{
ll n,dem=0;
cin>>n;
ll a[100000];
for(ll i=0;i<n;++i)
{
    cin>>a[i];
    if(nt(a[i])&&cl(a[i]))
    {
        dem++;
    }
}
cout<<dem;
}
image

Lời giải 2 :

#include<bits/stdc++.h>

using namespace std;

bool pm(int n){

if(n<=1) return false;

if(n<=3) return true;

if(n%2==0 || n%3==0) return false;

for(int i=5;i*i<=n;i+=6){

if(n%i==0 || n% (i+2)==0)

return false;

}

return true;

}

pair<int,int> dem(int n){

int e=0;o=0;

while(n>0){

int d=n%10;

if(d%2==0)

e++;

else

  o++;

n/=10;

}

return make_pair(e,o);

}

int kq(vector<int>&A){

int c=0;

for(int i=0;i<A.size();++i){

if(pm(A[i])){

pair<int,int> co=dem(A[i]);

if(co.first!=co.second)

c++;

}

}

return c;

}
int main(){

int N;

cin>>N;

vector<int>A(N);

for(int i=0;i<N;++i){

cin>>A[i];

}

cout<<kq(A)<<endl;

return 0;

}
#danglam228

Bạn có biết?

Tin học là một ngành khoa học chuyên nghiên cứu quá trình tự động hóa việc tổ chức, lưu trữ, xử lý và truyền dẫn thông tin của một hệ thống máy tính cụ thể hoặc trừu tượng. Tin học bao hàm tất cả các nghiên cứu và kỹ thuật có liên quan đến việc mô phỏng, biến đổi và tái tạo thông tin. Hãy tận dụng sức mạnh của tin học để giải quyết các vấn đề và sáng tạo ra những giải pháp mới!

Nguồn :

Wikipedia - Bách khoa toàn thư

Tâm sự lớp 9

Lớp 9 - Là năm cuối ở cấp trung học cơ sở, chúng ta sắp phải bước vào một kỳ thi căng thẳng và sắp chia tay bạn bè, thầy cô. Áp lực từ kỳ vọng của phụ huynh và tương lai lên cấp 3 thật là lớn, nhưng hãy tin vào bản thân và giữ vững sự tự tin!

Nguồn :

sưu tập

Liên hệ hợp tác hoặc quảng cáo: gmail

Điều khoản dịch vụ

Copyright © 2021 HOCTAPSGK