Pagini recente » Cod sursa (job #522725) | Cod sursa (job #2299152) | Cod sursa (job #1218519) | Cod sursa (job #2136512) | Cod sursa (job #2097435)
#include <fstream>
#define DIM 5000002
using namespace std;
ifstream f("pascal.in");
ofstream g("pascal.out");
int n, d, DOI, TREI, PATRU, CINCI, SASE, doi[DIM], trei[DIM], cinci[DIM];
bool viz[DIM];
int main()
{
f>>n>>d;
doi[2] = 1;
trei[3] = 1;
cinci[5] = 1;
for(int i = 2; i <= n; ++ i){
int nr = i;
if(!viz[i]){
for(int j = 2; j * i <= n; ++ j){
if(viz[i * j])
continue;
doi[i * j] += doi[i] + doi[j];
trei[i * j] += trei[i] + trei[j];
cinci[i * j] += cinci[i] + cinci[j];
viz[i * j] = 1;
}
viz[i] = 1;
}
}
DOI = 0;
TREI = 0;
CINCI = 0;
int s = 0;
for(int i = 0; i <= n; ++ i){
if(d == 2 && DOI > 0)
++ s;
if(d == 3 && TREI > 0)
++ s;
if(d == 4 && DOI > 1)
++ s;
if(d == 5 && CINCI > 0)
++ s;
if(d == 6 && DOI > 0 && TREI > 0)
++ s;
DOI -= doi[i + 1];
TREI -= trei[i + 1];
CINCI -= cinci[i + 1];
DOI += doi[n - i];
TREI += trei[n - i];
CINCI += cinci[n - i];
}
g<<s;
return 0;
}