Pagini recente » Cod sursa (job #450448) | Cod sursa (job #1715871) | Cod sursa (job #243629) | Cod sursa (job #1591740) | Cod sursa (job #1070233)
#include <fstream>
using namespace std;
ifstream fin("progresie.in");
ofstream fout("progresie.out");
struct coord {
int in, sf;
};
coord v[10001];
int n, r, i, elem, j, k, l, p, t, q = 1, rez;
int main() {
fin >> n;
v[1].in = v[1].sf = 1;
for(i = 1;i <= n;i++) {
fin >> elem >> r;
j = 1;k = 0;p = 0;
while(k != 1) {
l = j;
p = 0;
while(p < elem && k == 0) {
for(t = 1;t <= q;t++) {
if(l >= v[t].in && l <= v[t].sf) break;
else if(l < v[t].in) {k = 1;break;}
}
if(t == q + 1) {
while(k == 0) {
v[1 + q].in = v[q].sf + q + 1;
q++;
v[q].sf = v[q].in + q - 1;
if(l >= v[q].in && l <= v[q].sf) k = 2;
else if(l < v[q].in) k = 1;
}
if(k == 2) k = 0;
}
p++;
l += r;
}
k = (k + 1) % 2;
if(k == 1) rez = j;
j++;
}
fout << rez << '\n';
}
fin.close();
fout.close();
return 0;
}