diff options
| author | mzuenni <michi.zuendorf@gmail.com> | 2024-07-30 23:58:19 +0200 |
|---|---|---|
| committer | mzuenni <michi.zuendorf@gmail.com> | 2024-07-30 23:58:35 +0200 |
| commit | d7905f7dec9e306d7d6f907ce35abc40f24af1c5 (patch) | |
| tree | d2275dca21776ce7c808307d6e18b228a36d77a5 /content | |
| parent | b79123a4da8eb3c1aec30c4c03abf032daa0f1b1 (diff) | |
more tests
Diffstat (limited to 'content')
| -rw-r--r-- | content/datastructures/persistent.cpp | 8 | ||||
| -rw-r--r-- | content/datastructures/persistentArray.cpp | 4 |
2 files changed, 6 insertions, 6 deletions
diff --git a/content/datastructures/persistent.cpp b/content/datastructures/persistent.cpp index 4093cdc..7d15342 100644 --- a/content/datastructures/persistent.cpp +++ b/content/datastructures/persistent.cpp @@ -4,15 +4,15 @@ struct persistent { vector<pair<int, T>> data;
persistent(int& time, T value = {})
- : time(time), data(1, {time, value}) {}
+ : time(time), data(1, {2*time, value}) {}
T get(int t) {
- return prev(upper_bound(all(data), pair{t+1, T{}}))->second;
+ return prev(upper_bound(all(data), pair{2*t+1, T{}}))->second;
}
int set(T value) {
- time += 2;
- data.push_back({time, value});
+ time++;
+ data.push_back({2*time, value});
return time;
}
};
diff --git a/content/datastructures/persistentArray.cpp b/content/datastructures/persistentArray.cpp index 60d8b17..8326700 100644 --- a/content/datastructures/persistentArray.cpp +++ b/content/datastructures/persistentArray.cpp @@ -10,8 +10,8 @@ struct persistentArray { T get(int p, int t) {return data[p].get(t);}
int set(int p, T value) {
- mods.push_back({p, time});
- return data[p].set(value);
+ mods.push_back({p, data[p].set(value)});
+ return mods.back().second;
}
void reset(int t) {
|
