6978 | 2023. 12. 23 17:55:39 | MagyarKendeSZLG | Sorozat generálás | cpp17 | Elfogadva 50/50 | 21ms | 5768 KiB |
#include <iostream>
#include <vector>
#include <unordered_map>
#include <string>
#include <algorithm>
#define speed cin.tie(0); ios::sync_with_stdio(0)
using namespace std;
using ll = unsigned long long;
int main() {
speed;
ll M, X, A, B, N, K;
cin >> M >> X >> A >> B >> N >> K;
vector<ll> row(N);
unordered_map<ll, ll> vis;
bool found = 0;
for (int i = 0; i < N; i++) {
row[i] = i ? row[i - 1] : X;
row[i] *= A;
row[i] += B;
string s = to_string(row[i]);
while (s.size() != 4 * M) s = "0" + s;
row[i] = stoi(s.substr(M, 2 * M));
if (!found) {
if (vis[row[i]]) {
found = 1;
cout << i + 1 - vis[row[i]] << '\n';
} else {
vis[row[i]] = i + 1;
}
}
}
sort(row.begin(), row.end(), greater<ll>());
cout << row[K - 1];
}
Részfeladat | Összpont | Teszt | Verdikt | Idő | Memória | ||
---|---|---|---|---|---|---|---|
base | 50/50 | ||||||
1 | Elfogadva | 0/0 | 3ms | 1828 KiB | |||
2 | Elfogadva | 0/0 | 19ms | 3480 KiB | |||
3 | Elfogadva | 2/2 | 3ms | 2232 KiB | |||
4 | Elfogadva | 2/2 | 3ms | 2608 KiB | |||
5 | Elfogadva | 2/2 | 3ms | 2828 KiB | |||
6 | Elfogadva | 2/2 | 3ms | 3020 KiB | |||
7 | Elfogadva | 2/2 | 3ms | 3272 KiB | |||
8 | Elfogadva | 4/4 | 4ms | 3360 KiB | |||
9 | Elfogadva | 4/4 | 6ms | 3544 KiB | |||
10 | Elfogadva | 4/4 | 10ms | 4180 KiB | |||
11 | Elfogadva | 4/4 | 8ms | 4236 KiB | |||
12 | Elfogadva | 4/4 | 13ms | 4632 KiB | |||
13 | Elfogadva | 4/4 | 16ms | 5184 KiB | |||
14 | Elfogadva | 4/4 | 21ms | 5444 KiB | |||
15 | Elfogadva | 4/4 | 19ms | 5532 KiB | |||
16 | Elfogadva | 4/4 | 19ms | 5712 KiB | |||
17 | Elfogadva | 4/4 | 19ms | 5768 KiB |