Un CF par jour: 17/10/2020
800 points génial
sujet
Lien du titre original: https://codeforces.com/problemset/problem/1426/A
Idées
L'idée principale du sujet: maintenant, il est stipulé que le nombre 1-n: 1, 2 appartient au premier étage, puis chaque nombre x appartient au premier étage, étant donné n et x, déterminez le nombre de bâtiments où se trouve n.
Idée: n / 2 + 1 + (n% 2? 1: 0) Je ne veux pas en expliquer davantage
Code
#include <iostream>
#include <cstring>
#include <algorithm>
#include <map>
using namespace std;
const int MAX = 1e5 + 5;
int t,n,x,ans;
int main() {
ios::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
cin >> t;
while (t--) {
cin >> n >> x;
if (n <= 2) {
ans = 1;
}
else {
ans = 1 + (n - 2) / x + ((n - 2) % x ? 1 : 0);
}
cout << ans << endl;
}
return 0;
}