01/10/2018, 08:37
Tăng tốc độ chạy của code
Yeu cau de : Nhap 1 so n bat ki; in ra truoc no co bao nhieu so nguyen to.
Vi Du : INPUT 10 - OUT :3
INPUT 100000 - OUTPUT 9592
code em viet nhu the nay ma no chay lau qua luc nhap 100k at a. A/C co the giup em lam sao cho chay nhanh hon k ( toi uu code ). Sorry May tinh dang bi loi ko viet tieng viet co dau dc a
#include <iostream>
#include <math.h>
using namespace std;
int main()
{
int n, i, j;
cin >> n;
int dem = 0;
for (i = 2; i < n; i++)
{
bool prime = true;
for (j = 2; j < i; j++)
{
if (i % j == 0)
{
prime = false;
break;
}
}
if (prime == true)
dem++;
}
cout << dem;
}
Bài liên quan
Dùng sàng đi bạn
Muh câu này người ta hỏi nhiều lắm rồi
Em moi hoc dc 2 tuan @@ ko biet nhieu la sao anh giai thich them dc ko a.
Mới học 2 tuần vậy được rồi.
Nếu mình đưa ra bài toán này thì chỉ yêu cầu biết sử dụng vòng lặp và lồng câu lệnh điều kiện trong vòng lặp. Yếu tố nhanh hay chậm thì không care đâu. Và tést cũng không bao giờ test số lớn cả.
Chưa hay 100k không vẹo nhưng 1b chạy ko kịp.
Hình dung một bảng số từ 2 đến N. Nếu p là số nguyên tố thì 2p, 3p, … không phải là số nguyên tố nên gạch bỏ. Cuối cùng số nào không gạch thì số đó nguyên tố.
Thực ra chỉ cần gạch p^2, p^2+p, p^2+2p, …
Chia thử nó lâu cực kì với lại người ta kêu đếm tức là không cần lưu gì cả.
The co cach nao toi uu no ko nhi ? Neu co cho em xin Code voi a. Do Nop bai tren web truong. no tinh thoi gian chay tren day luon a.
Sorry mọi người kiến thức của mình còn ít.
Rất xin lỗi.