Pagini recente » Cod sursa (job #1536187) | Cod sursa (job #3208911) | Cod sursa (job #1247920) | Cod sursa (job #3270781) | Cod sursa (job #3155072)
#include <iostream>
using namespace std;
int nr[5000001][3];
int main() {
int n, q;
cin >> n >> q;
// pt 2
nr[2][0] = 1;
for(int i = 2; i <= n / 2; i ++) {
nr[2 * i][0] = nr[i][0] + 1;
nr[2 * i - 1][0] += nr[2 * (i - 1)][0];
nr[2 * i][0] += nr[2 * i - 1][0];
}
// pt 3
nr[3][1] = 1;
for(int i = 2; i <= n / 3; i ++) {
nr[3 * i][1] = nr[i][1] + 1;
nr[3 * i - 2][1] += nr[3 * (i - 1)][1];
nr[3 * i - 1][1] += nr[3 * i - 2][1];
nr[3 * i][1] += nr[3 * i - 1][1];
}
// pt 5
nr[5][2] = 1;
for(int i = 2; i <= n / 5; i ++) {
nr[5 * i][2] = nr[i][2] + 1;
nr[5 * i - 4][2] += nr[5 * (i - 1)][2];
nr[5 * i - 3][2] += nr[5 * i - 4][2];
nr[5 * i - 2][2] += nr[5 * i - 3][2];
nr[5 * i - 1][2] += nr[5 * i - 2][2];
nr[5 * i - 0][2] += nr[5 * i - 1][2];
}
return 0; // sus
// bruh
int cnt = 0;
for(int i = 1; i <= n; i ++) {
if(q == 2) {
if(nr[n][0] > nr[i][0] + nr[n - i][0]) {
cnt ++;
}
} else if(q == 3) {
if(nr[n][1] > nr[i][1] + nr[n - i][1]) {
cnt ++;
}
} else if(q == 4) {
if(nr[n][0] - (nr[i][0] + nr[n - i][0]) >= 2) {
cnt ++;
}
} else if(q == 5) {
if(nr[n][2] > nr[i][2] + nr[n - i][2]) {
cnt ++;
}
} else {
int x = nr[n][1] - (nr[i][1] + nr[n - i][1]);
int y = nr[n][0] - (nr[i][0] + nr[n - i][0]);
if(min(x, y) > 0) {
cnt ++;
}
}
}
cout << cnt;
return 0;
}