Did debug, but still not enough

This commit is contained in:
2025-11-10 17:33:39 +09:00
parent 28c4b5c61f
commit b42db10e14
4 changed files with 191 additions and 53 deletions

View File

@@ -20,31 +20,36 @@ int main(int argc, char *argv[]) {
vector<ll> cnt(n + 1, 0);
for (ll i = 0; i < m; ++i) {
ll s = rnd.next(1uLL, n);
if(cnt[s] == n-1)
{
i--;
continue;
}
cnt[s]++;
}
unordered_map<ll, ll> selected;
unordered_map<ll, ll> M;
for (ll s = 1; s <= n; ++s) {
ll k = cnt[s];
if (k == 0) continue;
selected.clear();
M.clear();
const ll N = n - 1;
for (ll i = 0; i < k; ++i) {
ll range_size = (n - 1) - i;
ll j = rnd.next(1uLL, range_size);
ll R = N - i;
ll j = rnd.next(1uLL, R);
ll val_j = selected.count(j) ? selected[j] : j;
ll val_last =
selected.count(range_size) ? selected[range_size] : range_size;
ll val_j = M.count(j) ? M[j] : j;
ll val_last = M.count(R) ? M[R] : R;
M[j] = val_last;
ll e = (val_j < s) ? val_j : val_j + 1;
double len = rnd.next(eps, 1.0 / eps);
println(s, e, len);
selected[j] = val_last;
}
}
}