diff --git a/src/20241111/U75662.cpp b/src/20241111/U75662.cpp new file mode 100644 index 0000000..8054e1f --- /dev/null +++ b/src/20241111/U75662.cpp @@ -0,0 +1,58 @@ +#include +#include +#include +#include +#include +#include +#include +#include +#include + +using ll = int64_t; + +const ll max_m = 1e3 + 5, max_n = max_m, inf = std::numeric_limits::max(); +ll n, m, s, dists[max_n]; +struct Edge{ + ll u,v,x,y,t; +}edges[max_m]; + +int main(){ + std::fill(dists, dists+max_n, inf); + + std::cin>>n>>m>>s; + + for(ll i{1};i<=m;i++){ + std::cin>>edges[i].u>>edges[i].v>>edges[i].x>>edges[i].y>>edges[i].t; + } + + std::priority_queue, std::vector>, std::greater<>> pq; + pq.emplace(0, s); + while(!pq.empty()){ + const auto [dist,now] = pq.top(); + pq.pop(); + if(dist > dists[now])continue; + for(ll i{1};i<=m;i++){ + if(edges[i].u<=now && now<=edges[i].v){ + for(ll target{edges[i].x}; target<=edges[i].y; ++target){ + if(dists[target] > dist + edges[i].t){ + dists[target] = dist + edges[i].t; + pq.emplace(dists[target], target); + } + } + } + if(edges[i].x <= now && now<=edges[i].y){ + for(ll target{edges[i].u}; target<=edges[i].v; ++target){ + if(dists[target] > dist + edges[i].t){ + dists[target] = dist + edges[i].t; + pq.emplace(dists[target], target); + } + } + } + } + } + + for(ll i{1};i<=n;i++){ + std::cout<<(dists[i]==inf?-1ll:dists[i])<<' '; + } + std::cout<<'\n'< +#include +#include +#include +#include +#include + +using namespace std; + +// 定义一个结构来存储传送门信息 +struct Portal { + int u, v, x, y, t; +}; + +// 定义常数 +const int INF = numeric_limits::max(); + +// 使用 Dijkstra 算法来求解最短路径 +void dijkstra(int n, int s, const vector& portals) { + // 最短路径数组,初始化为无穷大 + vector dist(n + 1, INF); + dist[s] = 0; + + // 优先队列 (距离, 节点) + priority_queue, vector>, greater<>> pq; + pq.emplace(0, s); + + // 开始 Dijkstra 算法 + while (!pq.empty()) { + auto [current_dist, node] = pq.top(); + pq.pop(); + + // 如果从优先队列中取出的距离大于当前记录的最短路径,跳过 + if (current_dist > dist[node]) continue; + + // 遍历每个传送门,检查是否可以更新路径 + for (const auto& portal : portals) { + // 检查传送门的两侧范围 + if ((portal.u <= node && node <= portal.v) || (portal.x <= node && node <= portal.y)) { + // 从 [u, v] 到 [x, y] 的传送 + for (int target = portal.x; target <= portal.y; ++target) { + if (dist[node] + portal.t < dist[target]) { + dist[target] = dist[node] + portal.t; + pq.emplace(dist[target], target); + } + } + // 从 [x, y] 到 [u, v] 的传送 + for (int target = portal.u; target <= portal.v; ++target) { + if (dist[node] + portal.t < dist[target]) { + dist[target] = dist[node] + portal.t; + pq.emplace(dist[target], target); + } + } + } + } + } + + // 输出结果 + for (int i = 1; i <= n; ++i) { + if (dist[i] == INF) { + cout << -1 << " "; + } else { + cout << dist[i] << " "; + } + } + cout << endl; +} + +int main() { + int n, m, s; + cin >> n >> m >> s; + + vector portals(m); + for (int i = 0; i < m; ++i) { + cin >> portals[i].u >> portals[i].v >> portals[i].x >> portals[i].y >> portals[i].t; + } + + // 调用 Dijkstra 算法来求解最短路径 + dijkstra(n, s, portals); + + return 0; +} +``` + +### 说明 +1. **输入和输出**: + - 输入格式:从标准输入读取节点数 `n`、传送门数 `m`、起点 `s`,以及 `m` 个传送门的定义。 + - 输出格式:输出从起点 `s` 到所有其他节点的最短路径,如果无法到达则输出 `-1`。 + +2. **优化**: + - 处理传送门时,遍历范围可能会影响性能,可使用更复杂的数据结构如线段树或平衡树优化范围更新。 + +### 复杂度分析 +- **时间复杂度**:最坏情况下 $O((n + m) \log n)$,其中 `n` 是节点数,`m` 是传送门数。 +- **空间复杂度**:$O(n + m)$,用于存储图和距离数组。 + +此代码实现了求解最短路径的逻辑,并考虑了传送门带来的多对多路径更新。 + +实现此问题的 C++ 解决方案需要使用 `priority_queue` 来实现 Dijkstra 算法,并有效地处理范围传送门。以下是完整的实现步骤: + +### 实现步骤 +1. **定义数据结构**: + - 使用邻接表存储图。 + - 使用 `priority_queue` 实现 Dijkstra 算法。 + +2. **处理传送门**: + - 每个传送门对应一段范围到另一段范围的双向边,需要额外的处理逻辑。 + +3. **算法流程**: + - 初始化 `dist` 数组并将起点加入优先队列。 + - 更新节点的最短路径。 + - 遇到传送门时更新目标范围的路径。 + +### 代码实现 +```cpp +#include +#include +#include +#include +#include +#include + +using namespace std; + +// 定义一个结构来存储传送门信息 +struct Portal { + int u, v, x, y, t; +}; + +// 定义常数 +const int INF = numeric_limits::max(); + +// 使用 Dijkstra 算法来求解最短路径 +void dijkstra(int n, int s, const vector& portals) { + // 最短路径数组,初始化为无穷大 + vector dist(n + 1, INF); + dist[s] = 0; + + // 优先队列 (距离, 节点) + priority_queue, vector>, greater<>> pq; + pq.emplace(0, s); + + // 开始 Dijkstra 算法 + while (!pq.empty()) { + auto [current_dist, node] = pq.top(); + pq.pop(); + + // 如果从优先队列中取出的距离大于当前记录的最短路径,跳过 + if (current_dist > dist[node]) continue; + + // 遍历每个传送门,检查是否可以更新路径 + for (const auto& portal : portals) { + // 检查传送门的两侧范围 + if ((portal.u <= node && node <= portal.v) || (portal.x <= node && node <= portal.y)) { + // 从 [u, v] 到 [x, y] 的传送 + for (int target = portal.x; target <= portal.y; ++target) { + if (dist[node] + portal.t < dist[target]) { + dist[target] = dist[node] + portal.t; + pq.emplace(dist[target], target); + } + } + // 从 [x, y] 到 [u, v] 的传送 + for (int target = portal.u; target <= portal.v; ++target) { + if (dist[node] + portal.t < dist[target]) { + dist[target] = dist[node] + portal.t; + pq.emplace(dist[target], target); + } + } + } + } + } + + // 输出结果 + for (int i = 1; i <= n; ++i) { + if (dist[i] == INF) { + cout << -1 << " "; + } else { + cout << dist[i] << " "; + } + } + cout << endl; +} + +int main() { + int n, m, s; + cin >> n >> m >> s; + + vector portals(m); + for (int i = 0; i < m; ++i) { + cin >> portals[i].u >> portals[i].v >> portals[i].x >> portals[i].y >> portals[i].t; + } + + // 调用 Dijkstra 算法来求解最短路径 + dijkstra(n, s, portals); + + return 0; +} +``` + +### 说明 +1. **输入和输出**: + - 输入格式:从标准输入读取节点数 `n`、传送门数 `m`、起点 `s`,以及 `m` 个传送门的定义。 + - 输出格式:输出从起点 `s` 到所有其他节点的最短路径,如果无法到达则输出 `-1`。 + +2. **优化**: + - 处理传送门时,遍历范围可能会影响性能,可使用更复杂的数据结构如线段树或平衡树优化范围更新。 + +### 复杂度分析 +- **时间复杂度**:最坏情况下 $O((n + m) \log n)$,其中 `n` 是节点数,`m` 是传送门数。 +- **空间复杂度**:$O(n + m)$,用于存储图和距离数组。 + +此代码实现了求解最短路径的逻辑,并考虑了传送门带来的多对多路径更新。 \ No newline at end of file diff --git a/src/20241111/portal/portal1.ans b/src/20241111/portal/portal1.ans new file mode 100644 index 0000000..6d25772 --- /dev/null +++ b/src/20241111/portal/portal1.ans @@ -0,0 +1 @@ +0 0 0 -1 0 0 diff --git a/src/20241111/portal/portal1.in b/src/20241111/portal/portal1.in new file mode 100644 index 0000000..ed42d4a --- /dev/null +++ b/src/20241111/portal/portal1.in @@ -0,0 +1,3 @@ +6 2 1 +1 1 2 3 0 +3 3 5 6 0 diff --git a/src/20241111/portal/portal2.ans b/src/20241111/portal/portal2.ans new file mode 100644 index 0000000..1e74d34 --- /dev/null +++ b/src/20241111/portal/portal2.ans @@ -0,0 +1 @@ +-1 -1 154271 154271 139067 64311 110578 100171 96758 99138 99138 99138 99138 99138 99138 99138 78629 79844 99138 73260 73260 73260 73260 73260 73260 73260 73260 73260 73260 73260 95988 88739 94227 103631 129772 128697 63404 59628 59628 59628 59628 59628 59628 59628 59628 59628 59628 59628 83232 83141 83232 83232 83232 83232 83232 7169 83140 140926 68031 68031 68031 68031 51225 51225 51225 51225 51225 68031 68031 112502 112502 112502 112502 112502 87695 34018 112684 96644 96644 96644 96644 96644 85772 96644 96644 96644 96644 94557 94557 94557 94557 94557 94557 94557 84055 94557 94557 94557 145231 145231 103621 133667 142767 145231 73351 73351 73351 73351 73351 73351 73351 73351 73351 73351 73351 61516 61516 61516 61516 61516 61516 61516 61516 61516 61516 61516 117200 161898 161898 161898 161898 161898 161898 80688 -1 -1 -1 219811 123684 -1 101834 -1 -1 120344 94538 90362 85877 132618 -1 99322 159903 91208 91208 91208 91208 91208 91208 -1 128274 -1 149184 159463 88397 178645 -1 105158 105158 105158 105158 42937 105158 105158 105158 105158 75513 88958 107512 35348 88490 87744 101516 101516 101516 101516 101516 101516 101516 101516 71439 114296 114296 114296 114296 114296 0 163630 91136 97060 108098 76652 diff --git a/src/20241111/portal/portal2.in b/src/20241111/portal/portal2.in new file mode 100644 index 0000000..5f3e5dc --- /dev/null +++ b/src/20241111/portal/portal2.in @@ -0,0 +1,153 @@ +200 152 195 +195 195 170 170 42937 +124 124 31 31 34472 +81 81 86 86 39171 +68 68 11 11 32877 +37 37 103 103 79363 +73 73 179 179 50225 +184 184 162 162 57947 +116 116 8 8 38655 +12 12 91 91 29480 +122 122 50 50 21625 +15 15 50 50 45919 +183 183 21 21 65628 +180 180 119 119 26228 +112 112 179 179 15139 +151 151 102 102 26236 +168 168 33 33 92274 +3 13 97 107 80920 +26 36 181 188 28256 +173 173 159 159 23116 +145 145 173 173 73924 +54 54 75 75 4463 +144 144 113 113 46993 +33 33 57 57 69904 +11 11 37 37 64012 +195 195 76 76 34018 +164 164 18 18 98801 +10 20 71 81 65120 +86 86 101 101 6977 +85 95 10 20 67893 +199 199 13 13 76259 +32 32 134 134 93367 +152 157 78 88 5436 +90 90 108 108 65513 +20 30 66 76 39242 +61 61 66 66 97612 +161 161 138 138 70627 +175 184 45 55 47884 +121 121 177 177 75753 +26 26 32 32 15479 +34 34 198 198 6571 +195 195 46 46 91841 +147 147 180 180 43687 +198 198 8 8 73484 +86 86 75 75 61023 +98 98 197 197 93886 +126 126 83 83 24256 +80 90 60 70 77487 +10 20 188 194 41036 +139 139 61 61 55653 +79 79 52 52 39081 +9 9 13 13 83980 +120 120 122 122 83066 +57 57 125 125 21624 +70 70 65 65 81668 +166 176 55 65 97989 +189 189 152 152 42770 +33 33 154 154 3019 +32 32 71 71 89264 +26 36 34 44 75203 +48 48 150 150 39694 +8 18 22 32 81032 +64 64 18 18 28619 +73 73 111 111 86533 +20 20 22 22 99487 +65 65 86 86 52068 +15 15 31 31 49278 +43 43 28 28 51412 +96 96 74 74 51526 +153 153 196 196 72422 +145 145 145 145 21996 +146 146 120 120 68108 +156 156 186 186 98416 +183 183 110 110 43734 +197 197 145 145 3402 +67 67 175 175 24288 +127 127 34 34 13569 +83 83 36 36 42925 +55 55 25 25 99376 +185 185 103 103 96874 +109 109 42 42 84460 +87 97 48 58 98695 +68 68 37 37 55632 +18 18 101 101 96732 +163 163 95 95 58552 +190 190 12 12 97587 +105 115 68 78 39333 +38 48 59 69 8403 +38 38 125 125 11396 +186 186 182 182 18275 +25 25 117 117 32640 +124 124 200 200 15136 +6 6 200 200 66242 +6 6 198 198 32749 +176 176 66 66 37733 +43 43 163 163 28769 +96 96 141 141 84858 +189 189 92 92 72068 +121 121 90 90 57163 +35 35 194 194 17528 +195 195 178 178 35348 +141 141 64 64 50609 +41 51 24 34 61238 +134 134 124 124 19172 +24 24 161 161 75924 +103 103 107 107 88695 +60 60 17 17 10598 +20 20 147 147 12617 +56 56 195 195 7169 +15 15 50 50 68706 +102 102 119 119 72151 +39 39 77 77 54566 +181 181 97 97 82596 +82 82 109 109 86235 +120 120 8 8 78474 +168 168 87 87 85799 +89 89 78 78 51895 +9 9 30 30 44625 +32 32 167 167 75301 +163 163 95 95 49617 +97 97 154 154 61689 +25 35 123 133 88638 +34 34 91 91 81216 +45 45 148 148 72990 +148 148 34 34 98118 +73 73 79 79 39631 +63 67 52 57 44056 +190 190 134 134 43579 +88 98 20 30 21297 +11 11 96 96 15577 +9 9 48 48 67450 +111 111 190 190 96485 +48 48 121 121 22696 +130 130 162 162 32002 +189 189 7 7 39139 +189 189 126 126 9923 +54 54 9 9 13526 +199 199 15 15 8960 +116 116 170 170 59762 +153 153 3 3 71245 +195 195 22 22 86707 +128 128 199 199 97230 +163 163 169 169 57607 +143 143 165 165 7928 +5 5 71 71 26565 +68 68 95 95 16024 +175 175 146 146 14849 +67 67 6 6 13086 +141 141 71 71 46499 +197 197 45 45 31508 +37 47 116 126 1888 +53 53 74 74 92937 +116 116 17 17 17743 diff --git a/src/20241111/portal/portal3.ans b/src/20241111/portal/portal3.ans new file mode 100644 index 0000000..519828b --- /dev/null +++ b/src/20241111/portal/portal3.ans @@ -0,0 +1 @@ +-1 -1 135640 77325 77325 77325 77325 77325 77325 77325 77325 77325 77325 77325 106200 74680 138285 79608 97089 94425 94425 94425 94425 94425 94425 94425 94425 0 94425 94425 154650 102874 102874 102874 102874 102874 102874 102874 102874 102874 95957 95957 95957 95957 95957 95957 95957 95957 95957 95957 95957 127391 127391 127391 127391 127391 97435 167803 189489 182253 158107 158107 133354 117808 110818 105540 117808 94355 94355 94355 94355 86547 94355 94355 94355 94355 94355 94355 97767 97767 97767 90451 90451 90451 90451 90451 90451 90451 90451 90451 90451 90451 119666 161362 165703 265836 122477 -1 157449 102906 126326 74523 126326 126326 117988 111663 81067 88948 88948 88948 88948 88948 80526 88948 88948 88948 88948 103411 103411 79004 103411 101660 103411 44979 103411 103411 168257 144869 139680 103534 132269 107282 108231 99030 106350 126440 138673 140609 144100 -1 -1 -1 110238 195221 106946 -1 74195 74195 74195 74195 74195 74195 74195 74195 74195 74195 74195 141405 -1 145732 132525 123776 -1 -1 107484 130275 110270 180409 94109 94109 94109 94109 94109 94109 94109 94109 94109 94109 94109 -1 -1 -1 100867 -1 149685 149744 101177 -1 153461 167228 -1 111528 -1 137059 158274 167476 -1 37285 -1 156939 diff --git a/src/20241111/portal/portal3.in b/src/20241111/portal/portal3.in new file mode 100644 index 0000000..adb191f --- /dev/null +++ b/src/20241111/portal/portal3.in @@ -0,0 +1,153 @@ +200 152 28 +27 27 31 31 96054 +51 51 71 71 15379 +25 25 161 161 40665 +8 8 158 158 82639 +47 57 64 67 21851 +87 87 198 198 96464 +168 168 72 72 93862 +169 169 134 134 4921 +46 56 32 42 74919 +16 16 152 152 485 +75 85 11 21 62804 +185 185 128 128 4816 +95 95 14 14 88378 +147 157 116 126 29216 +137 137 152 152 87343 +119 119 133 133 4820 +106 116 32 42 22348 +52 52 42 42 91374 +198 198 28 28 37285 +139 139 132 132 93324 +194 194 139 139 7041 +75 75 187 187 6822 +106 106 186 186 38081 +102 102 150 150 328 +114 124 14 15 61221 +102 102 105 105 78772 +4 14 26 36 77325 +37 47 80 90 30452 +101 101 112 112 76343 +166 166 103 103 25191 +105 105 169 169 23879 +65 65 9 9 33493 +97 97 80 80 38517 +66 66 78 78 11185 +161 161 112 112 43577 +153 153 72 72 12352 +101 111 74 84 35875 +41 51 41 51 93276 +160 160 80 80 47965 +135 135 29 29 18291 +80 90 61 71 67656 +97 97 10 10 45152 +99 99 189 189 33316 +138 138 192 192 55720 +131 131 51 51 36312 +4 4 189 189 76136 +107 107 115 115 38953 +106 106 79 79 85747 +100 100 24 24 8481 +165 165 18 18 27876 +138 138 54 54 16776 +149 149 128 128 70674 +40 40 65 65 33313 +190 190 81 81 76257 +129 129 77 77 45325 +20 20 117 117 53646 +132 132 13 13 29957 +115 115 71 71 30644 +136 136 5 5 49115 +107 117 26 36 88948 +123 123 59 59 86078 +79 89 39 49 98256 +130 130 113 113 23008 +106 106 70 70 92023 +20 30 20 30 94425 +169 179 76 86 3658 +50 50 13 13 23413 +147 147 57 57 23240 +113 113 11 11 3201 +112 112 48 48 29850 +138 138 86 86 50158 +71 71 128 128 77770 +100 100 122 122 67900 +124 124 28 28 44979 +118 118 50 50 17618 +108 108 120 120 15994 +25 25 173 173 73270 +6 6 196 196 90151 +144 144 105 105 77233 +7 7 64 64 85279 +178 178 145 145 12837 +91 91 200 200 66488 +18 18 134 134 20219 +158 158 37 37 38531 +183 183 198 198 63582 +121 121 24 24 22681 +161 161 117 117 81042 +176 176 74 74 12367 +30 30 114 114 12753 +178 178 138 138 53716 +129 129 93 93 61902 +163 163 142 142 33107 +38 38 63 63 30480 +194 194 32 32 34185 +67 67 40 40 22748 +18 18 155 155 5413 +106 106 109 109 22715 +41 41 60 60 86296 +122 122 51 51 58527 +185 185 131 131 42997 +106 106 26 26 29932 +190 190 169 169 73119 +18 18 171 171 37773 +162 162 120 120 44772 +145 145 125 125 79014 +48 48 19 19 1132 +68 68 99 99 63094 +122 122 21 21 7235 +40 40 157 157 49836 +143 143 67 67 97288 +93 93 166 166 64362 +104 114 6 16 64658 +126 126 167 167 6859 +81 81 113 113 67178 +24 24 138 138 76260 +10 10 3 3 89788 +30 30 100 100 28322 +110 110 65 65 86451 +51 51 172 172 65881 +58 58 190 190 575 +72 72 195 195 71727 +170 170 19 19 8720 +46 46 150 150 62497 +3 13 16 26 60960 +36 36 187 187 6406 +111 121 35 45 64231 +36 36 15 15 49186 +58 58 56 56 61118 +192 192 4 4 34203 +18 18 35 35 81195 +120 120 198 198 41719 +137 137 67 67 20865 +107 107 166 166 49208 +25 25 110 110 39232 +140 140 181 181 9726 +135 135 175 175 12241 +68 78 82 92 3904 +156 156 15 15 60030 +94 94 51 51 65405 +155 155 25 25 30366 +61 61 138 138 94609 +143 143 27 27 15813 +176 176 93 93 25557 +116 116 192 192 83254 +139 139 10 10 67316 +157 157 107 107 6872 +158 158 63 63 49377 +96 96 60 60 83583 +170 170 124 124 58094 +75 75 127 127 73902 +29 29 160 160 77612 +41 51 5 15 18632 diff --git a/src/20241111/portal/portal4.ans b/src/20241111/portal/portal4.ans new file mode 100644 index 0000000..d73ea30 --- /dev/null +++ b/src/20241111/portal/portal4.ans @@ -0,0 +1 @@ +42675163 42674765 42586686 42582738 42565110 42483646 42419636 42397854 42316060 42298284 42287254 42276886 42241567 42194753 42163856 42101591 42081602 42022379 42000003 41939324 41900061 41871357 41833672 41739923 41714872 41636669 41551068 41524678 41427706 41329566 41251844 41153532 41125187 41104116 41096968 41022009 41008524 40914761 40859835 40781177 40779083 40753734 40682588 40615208 40555030 40524117 40434227 40382185 40361623 40312288 40277934 40256833 40253986 40208809 40126851 40038257 39963279 39931203 39917291 39862188 39780745 39696532 39610804 39564342 39494658 39443422 39390946 39304733 39224744 39190503 39148730 39111827 39081141 39007714 39006975 38925037 38865910 38844074 38799956 38789340 38751323 38678165 38652534 38558127 38538492 38485512 38483299 38434519 38386710 38308002 38286435 38285068 38205205 38200206 38159930 38064849 38003088 37933214 37926085 37922738 37889600 37799127 37738740 37642996 37559225 37492380 37479686 37440728 37431504 37383518 37329386 37250230 37228857 37224174 37155298 37070709 37054310 36991483 36970906 36927070 36841709 36840720 36758450 36710096 36697187 36682189 36645312 36582496 36488191 36408091 36343007 36304730 36222684 36187112 36110238 36101095 36008501 35997255 35996523 35954136 35891187 35837322 35836598 35740312 35708415 35619676 35533619 35456039 35415526 35374709 35285266 35215073 35116448 35085546 35056855 35007890 34998351 34933444 34876122 34801593 34792956 34752717 34738070 34728087 34694714 34613971 34571522 34497454 34426117 34396768 34330636 34231233 34169452 34144946 34085961 34031688 33953212 33946961 33918032 33875112 33815564 33733584 33706194 33695977 33614209 33595180 33563750 33498073 33496656 33442913 33420983 33326648 33298547 33266559 33216152 33196179 33190581 33172752 33129868 33127118 33112234 33086318 32989204 32961383 32864024 32776482 32716468 32653589 32638434 32545615 32513726 32503311 32495688 32471364 32436032 32432222 32392547 32312134 32257800 32255597 32194418 32185340 32106909 32051314 31979677 31960203 31898341 31847239 31772943 31769033 31759310 31671204 31613461 31600615 31574258 31569970 31558616 31461452 31379941 31344630 31289519 31245645 31182753 31168757 31147848 31117778 31043300 31019720 30969290 30888641 30801517 30708819 30646746 30594241 30537353 30463817 30415304 30391323 30341837 30255800 30176168 30111686 30097558 30010556 29952435 29877819 29799588 29726707 29651812 29582803 29553457 29512597 29453424 29374337 29360135 29341247 29303526 29211970 29171073 29088738 29058416 28998006 28974711 28895582 28880378 28816285 28727461 28712558 28656041 28633749 28605732 28550753 28473166 28468566 28381424 28373521 28353707 28280042 28243482 28194577 28102805 28025607 28002133 27921769 27835360 27775599 27712783 27624829 27576677 27493845 27443338 27427126 27401533 27304739 27230343 27138456 27116005 27111397 27107578 27017892 26998565 26963781 26924799 26871949 26784723 26748337 26698887 26611093 26566933 26544492 26536719 26486834 26421153 26379396 26304872 26297080 26210213 26198481 26144807 26101629 26099898 26097927 26051718 25995659 25918085 25862585 25789351 25747012 25722435 25630189 25606314 25536192 25462430 25410231 25325043 25228550 25183062 25177245 25099168 25074886 25069679 25022252 25002685 24913802 24816807 24752391 24752391 24694632 24598614 24533823 24501590 24435488 24410421 24407858 24370171 24330120 24288751 24245738 24170166 24108449 24036190 24024301 23961514 23930489 23877844 23850457 23820512 23789895 23771723 23748745 23730304 23638625 23637240 23585043 23578653 23548315 23517939 23420370 23407753 23332486 23266958 23192962 23171620 23163754 23063823 22970908 22891094 22820074 22770706 22736645 22657244 22628177 22618965 22601283 22547130 22494435 22422781 22387514 22320325 22220336 22191061 22113996 22060522 22027450 21988531 21907467 21871098 21799616 21721823 21631384 21582766 21572573 21546725 21518951 21419849 21408496 21310555 21243192 21197176 21156259 21088515 21086811 21012534 20973117 20883888 20877593 20791173 20701975 20680388 20614622 20599464 20536205 20519585 20478246 20384468 20335233 20314646 20237604 20178373 20106399 20091955 20067959 20030255 19994153 19895514 19851960 19834285 19810361 19739231 19641902 19611133 19582440 19564172 19556217 19543515 19475669 19391047 19342560 19276617 19262076 19241071 19170254 19082165 19027254 19019399 18950853 18912060 18910804 18862387 18846968 18778974 18690298 18594542 18592479 18526776 18492225 18452498 18426985 18406020 18342919 18315427 18312168 18253836 18171445 18153316 18100694 18093983 18085200 18049819 17983840 17980559 17932888 17855744 17802400 17778157 17751019 17672486 17580348 17576203 17528861 17447700 17350532 17259166 17170806 17168659 17123085 17098027 17060117 17001159 16904297 16850100 16772825 16746603 16647693 16625008 16598927 16505822 16441618 16389892 16304153 16300553 16281835 16259851 16175634 16093472 16080019 15998874 15980455 15913906 15907402 15825797 15726185 15695624 15662708 15568252 15472021 15425087 15330032 15323329 15318104 15271292 15225341 15193185 15130402 15075966 15066299 15055834 14962397 14891961 14822377 14724756 14667211 14593784 14572547 14535657 14525999 14479500 14420089 14357458 14308848 14260817 14219424 14130332 14075736 13977995 13909791 13826351 13752346 13698583 13669947 13640800 13566986 13479850 13404173 13363927 13303318 13221587 13198716 13138066 13126240 13095691 13056457 12982040 12931474 12894948 12854062 12777755 12767603 12712440 12630952 12553031 12534414 12474127 12418910 12402689 12368394 12303401 12239584 12149384 12110459 12041974 12003023 11966256 11938070 11925420 11868863 11854534 11769032 11710158 11706701 11647843 11591072 11556274 11540208 11534146 11452667 11423098 11354885 11354053 11308621 11222030 11178893 11098964 11098181 11015248 11010656 10960896 10926932 10834498 10774336 10721955 10663641 10651672 10565592 10512249 10490954 10409374 10346329 10247696 10177463 10108627 10014504 9957669 9904079 9887900 9836937 9777927 9769751 9719033 9670124 9655263 9603754 9563360 9464004 9369572 9333521 9313928 9311201 9280090 9223839 9144229 9091250 9002035 8995834 8957317 8948035 8947493 8881917 8828798 8800579 8757312 8692506 8636609 8619225 8591836 8561507 8505046 8468923 8390716 8356644 8318435 8308174 8263512 8195567 8180920 8118299 8075325 8038897 7982309 7956869 7895497 7891705 7802957 7723236 7651170 7594535 7494609 7468071 7454183 7429221 7422929 7334787 7259520 7228346 7166643 7099260 7070236 6989794 6919764 6832266 6812606 6763994 6710926 6648230 6571331 6553165 6470579 6371754 6298369 6258516 6159766 6121520 6108338 6097871 6009068 5967313 5959842 5924711 5834942 5763034 5715063 5634953 5563093 5551925 5490256 5431493 5336414 5256430 5236913 5215041 5154835 5059855 5036762 4941907 4877258 4847442 4794253 4789630 4776156 4776087 4775896 4678558 4592435 4585824 4558284 4496400 4422380 4359773 4279559 4250017 4225715 4215369 4179423 4100097 4088671 4045577 4031819 3951032 3875874 3869695 3809358 3773718 3693571 3686653 3600508 3599502 3575097 3487727 3444695 3427377 3407398 3310831 3271103 3188552 3104073 3085243 3032346 2984837 2896187 2806647 2723353 2655996 2634258 2542583 2526553 2477186 2436430 2387827 2358983 2348477 2269045 2169628 2148152 2096062 2046976 2005822 2004841 1946099 1861865 1859607 1760585 1721535 1659295 1587190 1511260 1443956 1443791 1390155 1323176 1283550 1188308 1165567 1106814 1036431 1022938 953247 892093 858470 821187 766829 696808 613973 578030 544452 479495 391673 339503 329041 238759 230549 193708 94164 53588 41546 0 71394 170510 202983 301492 394836 493362 554154 598859 633981 636902 715228 735262 757729 821550 896696 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 diff --git a/src/20241111/portal/portal4.in b/src/20241111/portal/portal4.in new file mode 100644 index 0000000..f9ba87b --- /dev/null +++ b/src/20241111/portal/portal4.in @@ -0,0 +1,880 @@ +1000 879 865 +865 865 866 866 71394 +340 340 341 341 1731 +533 533 534 534 98910 +209 209 210 210 92819 +243 243 244 244 13996 +875 875 876 876 78326 +315 315 316 316 91887 +705 705 706 706 62621 +720 720 721 721 6292 +718 718 719 719 13888 +675 675 676 676 36051 +853 853 854 854 33578 +221 221 222 222 9078 +459 459 460 460 71974 +140 140 141 141 62949 +147 147 148 148 77580 +179 179 180 180 42920 +413 413 414 414 17682 +657 657 658 658 63045 +313 313 314 314 96794 +417 417 418 418 35267 +797 797 798 798 87370 +859 859 860 860 8210 +830 830 831 831 99022 +355 355 356 356 96493 +7 7 8 8 21782 +447 447 448 448 89198 +471 471 472 472 28693 +810 810 811 811 83294 +241 241 242 242 43874 +223 223 224 224 55595 +50 50 51 51 34354 +463 463 464 464 36102 +491 491 492 492 88676 +252 252 253 253 62073 +712 712 713 713 88748 +768 768 769 769 13474 +379 379 380 380 61717 +85 85 86 86 52980 +81 81 82 82 73158 +857 857 858 858 10462 +624 624 625 625 12650 +611 611 612 612 18617 +646 646 647 647 49760 +512 512 513 513 77144 +541 541 542 542 18718 +670 670 671 671 14861 +197 197 198 198 17829 +289 289 290 290 22292 +286 286 287 287 88824 +18 18 19 19 22376 +265 265 266 266 74616 +12 12 13 13 35319 +690 690 691 691 43267 +70 70 71 71 41773 +77 77 78 78 21836 +200 200 201 201 14884 +510 510 511 511 3281 +711 711 712 712 3792 +632 632 633 633 34798 +148 148 149 149 40513 +695 695 696 696 30329 +407 407 408 408 71020 +672 672 673 673 40394 +231 231 232 232 88106 +804 804 805 805 84479 +874 874 875 875 2921 +331 331 332 332 49885 +53 53 54 54 45177 +164 164 165 165 33373 +767 767 768 768 4623 +230 230 231 231 9723 +224 224 225 225 71637 +142 142 143 143 724 +390 390 391 391 18441 +477 477 478 478 48487 +840 840 841 841 95242 +808 808 809 809 88650 +343 343 344 344 56059 +642 642 643 643 79929 +332 332 333 333 65681 +238 238 239 239 81511 +715 715 716 716 56635 +476 476 477 477 84622 +852 852 853 853 35943 +296 296 297 297 19814 +383 383 384 384 31025 +190 190 191 191 21930 +482 482 483 483 88089 +73 73 74 74 73427 +668 668 669 669 50718 +319 319 320 320 89686 +815 815 816 816 49367 +295 295 296 296 7903 +4 4 5 5 17628 +567 567 568 568 93437 +787 787 788 788 80787 +196 196 197 197 5598 +93 93 94 94 4999 +453 453 454 454 41339 +410 410 411 411 79401 +8 8 9 9 81794 +199 199 200 200 2750 +100 100 101 101 33138 +522 522 523 523 91366 +464 464 465 465 98639 +576 576 577 577 46499 +763 763 764 764 94855 +259 259 260 260 86037 +452 452 453 453 16620 +43 43 44 44 67380 +324 324 325 325 87226 +641 641 642 642 43137 +546 546 547 547 81145 +484 484 485 485 7855 +803 803 804 804 82551 +325 325 326 326 36386 +341 341 342 342 1971 +854 854 855 855 64957 +24 24 25 25 25051 +819 819 820 820 10506 +14 14 15 15 30897 +468 468 469 469 71130 +88 88 89 89 47809 +462 462 463 463 37704 +38 38 39 39 54926 +273 273 274 274 79087 +653 653 654 654 86080 +165 165 166 166 80743 +660 660 661 661 68836 +130 130 131 131 65084 +558 558 559 559 6703 +455 455 456 456 49235 +17 17 18 18 59223 +429 429 430 430 90439 +248 248 249 249 50430 +829 829 830 830 2258 +614 614 615 615 16221 +158 158 159 159 57322 +22 22 23 23 37685 +422 422 423 423 53474 +481 481 482 482 70817 +348 348 349 349 24577 +680 680 681 681 79610 +443 443 444 444 39417 +794 794 795 795 86145 +266 266 267 267 78231 +159 159 160 160 74529 +441 441 442 442 1704 +112 112 113 113 21373 +169 169 170 170 29349 +587 587 588 588 74005 +380 380 381 381 72259 +713 713 714 714 79721 +423 423 424 424 33072 +36 36 37 37 13485 +538 538 539 539 51726 +775 775 776 776 61884 +204 204 205 205 97359 +424 424 425 425 38919 +431 431 432 432 10193 +490 490 491 491 67994 +312 312 313 313 25593 +261 261 262 262 64482 +520 520 521 521 81161 +400 400 401 401 65528 +659 659 660 660 70233 +709 709 710 710 25440 +155 155 156 156 48965 +344 344 345 345 77574 +800 800 801 801 19979 +480 480 481 481 21005 +634 634 635 635 6062 +474 474 475 475 12702 +173 173 174 174 24506 +178 178 179 179 28929 +411 411 412 412 29067 +789 789 790 790 6179 +336 336 337 337 86867 +432 432 433 433 25848 +284 284 285 285 15204 +397 397 398 398 97569 +216 216 217 217 39675 +205 205 206 206 87542 +591 591 592 592 73814 +508 508 509 509 35381 +799 799 800 800 17318 +845 845 846 846 69691 +698 698 699 699 78207 +516 516 517 517 78533 +878 878 879 879 63821 +15 15 16 16 62265 +758 758 759 759 19517 +320 320 321 321 19327 +52 52 53 53 2847 +192 192 193 193 28101 +356 356 357 357 45488 +620 620 621 621 68485 +176 176 177 177 78476 +54 54 55 55 81958 +774 774 775 775 27540 +399 399 400 400 75267 +661 661 662 662 94123 +160 160 161 161 8637 +742 742 743 743 13182 +42 42 43 43 71146 +704 704 705 705 14647 +404 404 405 405 99931 +104 104 105 105 83771 +225 225 226 226 19474 +434 434 435 435 99102 +133 133 134 134 35572 +835 835 836 836 67304 +847 847 848 848 33623 +409 409 410 410 34061 +834 834 835 835 75930 +246 246 247 247 74478 +549 549 550 550 6504 +579 579 580 580 48610 +513 513 514 514 53344 +110 110 111 111 54132 +664 664 665 665 16179 +268 268 269 269 74895 +790 790 791 791 60337 +23 23 24 24 93749 +536 536 537 537 93105 +55 55 56 56 88594 +366 366 367 367 0 +577 577 578 578 59411 +765 765 766 766 29816 +107 107 108 108 38958 +111 111 112 112 79156 +373 373 374 374 2563 +251 251 252 252 92698 +212 212 213 213 7623 +601 601 602 602 39234 +499 499 500 500 63101 +377 377 378 378 43013 +574 574 575 575 36890 +548 548 549 549 66549 +606 606 607 607 76307 +873 873 874 874 35122 +817 817 818 818 48603 +871 871 872 872 60792 +540 540 541 541 3600 +310 310 311 311 50507 +13 13 14 14 46814 +78 78 79 79 44118 +270 270 271 271 29346 +867 867 868 868 32473 +240 240 241 241 55111 +293 293 294 294 4600 +494 494 495 495 65703 +757 757 758 758 79984 +189 189 190 190 53743 +350 350 351 351 23875 +41 41 42 42 25349 +813 813 814 814 91675 +291 291 292 292 54979 +752 752 753 753 71860 +35 35 36 36 74959 +403 403 404 404 7866 +103 103 104 104 95744 +788 788 789 789 75158 +145 145 146 146 88739 +699 699 700 700 34072 +167 167 168 168 74068 +833 833 834 834 72105 +597 597 598 598 22871 +488 488 489 489 48417 +639 639 640 640 45432 +521 521 522 522 97168 +182 182 183 183 27390 +811 811 812 812 67357 +86 86 87 87 2213 +245 245 246 246 30070 +418 418 419 419 67189 +306 306 307 307 62816 +83 83 84 84 94407 +563 563 564 564 62783 +461 461 462 462 23996 +842 842 843 843 58753 +49 49 50 50 49335 +537 537 538 538 64204 +466 466 467 467 17675 +473 473 474 474 7955 +388 388 389 389 18172 +46 46 47 47 89890 +220 220 221 221 61179 +582 582 583 583 89092 +157 157 158 158 64907 +269 269 270 270 69009 +412 412 413 413 9212 +779 779 780 780 29542 +146 146 147 147 86057 +347 347 348 348 42339 +58 58 59 59 13912 +236 236 237 237 11354 +213 213 214 214 24324 +305 305 306 306 59761 +61 61 62 62 84213 +74 74 75 75 739 +764 764 765 765 64649 +131 131 132 132 38277 +469 469 470 470 97329 +505 505 506 506 52622 +753 753 754 754 11168 +625 625 626 626 56557 +500 500 501 501 27492 +514 514 515 515 24243 +708 708 709 709 56588 +328 328 329 329 44160 +371 371 372 372 66102 +590 590 591 591 29147 +673 673 674 674 99356 +703 703 704 704 67945 +748 748 749 749 89769 +483 483 484 484 54911 +770 770 771 771 191 +693 693 694 694 17384 +227 227 228 228 51102 +776 776 777 777 74020 +649 649 650 650 60162 +545 545 546 546 13453 +858 858 859 859 90282 +535 535 536 536 26081 +276 276 277 277 37721 +87 87 88 88 48780 +739 739 740 740 39853 +685 685 686 686 9282 +784 784 785 785 11426 +636 636 637 637 29569 +475 475 476 476 67846 +731 731 732 732 48612 +228 228 229 229 74296 +414 414 415 415 54153 +542 542 543 543 21984 +283 283 284 284 79129 +311 311 312 312 16212 +109 109 110 110 47986 +76 76 77 77 59127 +561 561 562 562 45951 +599 599 600 600 11826 +69 69 70 70 34241 +583 583 584 584 54596 +132 132 133 133 82046 +298 298 299 299 36560 +219 219 220 220 2203 +363 363 364 364 88883 +302 302 303 303 23474 +263 263 264 264 87002 +37 37 38 38 93763 +755 755 756 756 58763 +666 666 667 667 59010 +623 623 624 624 28186 +401 401 402 402 73996 +691 691 692 692 64806 +596 596 597 597 81731 +531 531 532 532 77275 +856 856 857 857 52170 +492 492 493 493 95756 +9 9 10 10 17776 +827 827 828 828 58742 +162 162 163 163 14647 +801 801 802 802 96567 +318 318 319 319 3819 +75 75 76 76 81938 +208 208 209 209 15155 +31 31 32 32 98312 +329 329 330 330 22441 +655 655 656 656 21295 +543 543 544 544 84217 +333 333 334 334 41757 +316 316 317 317 22451 +630 630 631 631 58858 +743 743 744 744 10467 +384 384 385 385 52645 +747 747 748 748 35131 +135 135 136 136 9143 +725 725 726 726 67383 +294 294 295 295 87142 +342 342 343 343 46209 +19 19 20 20 60679 +239 239 240 240 35311 +855 855 856 856 87822 +96 96 97 97 61761 +518 518 519 519 4145 +304 304 305 305 86409 +30 30 31 31 77722 +262 262 263 263 14128 +795 795 796 796 1006 +806 806 807 807 52897 +398 398 399 399 12617 +754 754 755 755 61669 +114 114 115 115 68876 +139 139 140 140 42387 +365 365 366 366 64416 +534 534 535 535 22685 +750 750 751 751 47971 +760 760 761 761 60206 +119 119 120 120 43836 +357 357 358 358 5817 +740 740 741 741 98750 +805 805 806 806 18830 +309 309 310 310 82832 +79 79 80 80 10616 +156 156 157 157 9539 +301 301 302 302 77198 +613 613 614 614 55217 +554 554 555 555 94456 +117 117 118 118 62827 +370 370 371 371 32233 +838 838 839 839 66979 +671 671 672 672 51509 +478 478 479 479 65943 +539 539 540 540 85739 +771 771 772 772 97338 +102 102 103 103 60387 +702 702 703 703 44662 +168 168 169 169 71337 +626 626 627 627 14329 +527 527 528 528 37910 +115 115 116 116 84589 +287 287 288 288 14903 +640 640 641 641 86591 +116 116 117 117 16399 +10 10 11 11 11030 +719 719 720 720 24962 +123 123 124 124 48354 +667 667 668 668 8176 +862 862 863 863 40576 +495 495 496 496 34551 +387 387 388 388 30617 +532 532 533 533 26222 +203 203 204 204 27821 +726 726 727 727 29024 +20 20 21 21 39263 +217 217 218 218 80413 +63 63 64 64 46462 +825 825 826 826 41154 +707 707 708 708 36428 +823 823 824 824 52090 +786 786 787 787 13758 +721 721 722 722 88142 +242 242 243 243 62892 +877 877 878 878 22467 +275 275 276 276 18888 +367 367 368 368 57759 +206 206 207 207 60014 +149 149 150 150 40817 +486 486 487 487 38793 +34 34 35 35 7148 +260 260 261 261 79632 +517 517 518 518 92138 +415 415 416 416 52695 +736 736 737 737 82586 +47 47 48 48 52042 +557 557 558 558 95055 +191 191 192 192 94335 +124 124 125 125 12909 +821 821 822 822 99417 +519 519 520 520 47342 +97 97 98 98 69874 +207 207 208 208 62879 +814 814 815 815 16030 +868 868 869 869 98509 +633 633 634 634 16066 +791 791 792 792 35640 +51 51 52 52 21101 +118 118 119 119 20577 +361 361 362 362 47427 +816 816 817 817 40756 +307 307 308 308 87954 +676 676 677 677 19593 +122 122 123 123 82270 +826 826 827 827 981 +65 65 66 66 51236 +551 551 552 552 99612 +3 3 4 4 3948 +177 177 178 178 6251 +105 105 106 106 66845 +585 585 586 586 68204 +837 837 838 838 53636 +428 428 429 429 77793 +352 352 353 353 73762 +559 559 560 560 5225 +681 681 682 682 52979 +570 570 571 571 97621 +730 730 731 731 19660 +258 258 259 259 49486 +828 828 829 829 84234 +439 439 440 440 40917 +465 465 466 466 43554 +818 818 819 819 28844 +170 170 171 171 66132 +762 762 763 763 23093 +198 198 199 199 42884 +150 150 151 151 89443 +493 493 494 494 2063 +256 256 257 257 48513 +674 674 675 675 94432 +98 98 99 99 7129 +233 233 234 234 12846 +237 237 238 238 97164 +151 151 152 152 70193 +232 232 233 233 57743 +511 511 512 512 47671 +56 56 57 57 74978 +780 780 781 781 24302 +185 185 186 186 19029 +729 729 730 730 87498 +692 692 693 693 55897 +138 138 139 139 732 +6 6 7 7 64010 +437 437 438 438 67363 +621 621 622 622 38951 +861 861 862 862 99544 +427 427 428 428 71482 +663 663 664 664 53590 +876 876 877 877 20034 +467 467 468 468 23924 +327 327 328 328 87794 +605 605 606 606 40886 +303 303 304 304 80364 +502 502 503 503 58332 +697 697 698 698 36123 +353 353 354 354 52199 +647 647 648 648 33964 +728 728 729 729 70030 +382 382 383 383 62787 +595 595 596 596 60609 +870 870 871 871 98526 +21 21 22 22 28704 +552 552 553 553 30561 +782 782 783 783 35946 +108 108 109 109 9224 +125 125 126 126 14998 +454 454 455 455 93778 +812 812 813 813 21738 +562 562 563 563 32156 +271 271 272 272 40860 +436 436 437 437 97941 +617 617 618 618 63817 +317 317 318 318 4608 +351 351 352 352 70122 +215 215 216 216 3810 +820 820 821 821 79432 +184 184 185 185 81768 +866 866 867 867 99116 +863 863 864 864 12042 +358 358 359 359 78077 +769 769 770 770 69 +749 749 750 750 71908 +264 264 265 265 58121 +860 860 861 861 36841 +656 656 657 657 81580 +756 756 757 757 95079 +5 5 6 6 81464 +696 696 697 697 56461 +751 751 752 752 80110 +163 163 164 164 9983 +700 700 701 701 38209 +272 272 273 273 59173 +181 181 182 182 81980 +274 274 275 275 14202 +438 438 439 439 46016 +72 72 73 73 30686 +449 449 450 450 65766 +498 498 499 499 20965 +16 16 17 17 19989 +686 686 687 687 542 +602 602 603 603 74417 +479 479 480 480 14541 +394 394 395 395 6390 +564 564 565 565 54436 +524 524 525 525 2147 +369 369 370 370 64791 +152 152 153 153 98625 +472 472 473 473 18268 +638 638 639 639 832 +322 322 323 323 38982 +2 2 3 3 88079 +645 645 646 646 4592 +376 376 377 377 41369 +426 426 427 427 36369 +622 622 623 623 36767 +669 669 670 670 48909 +433 433 434 434 27774 +290 290 291 291 28017 +321 321 322 322 34784 +127 127 128 128 62816 +392 392 393 393 1385 +745 745 746 746 41755 +458 458 459 459 59231 +201 201 202 202 25916 +635 635 636 636 81479 +781 781 782 782 10346 +444 444 445 445 89229 +798 798 799 799 43032 +509 509 510 510 65979 +308 308 309 309 48152 +80 80 81 81 38017 +40 40 41 41 2094 +129 129 130 130 80100 +618 618 619 619 90200 +395 395 396 396 30338 +378 378 379 379 75572 +161 161 162 162 40239 +249 249 250 250 80649 +281 281 282 282 60410 +59 59 60 60 55103 +550 550 551 551 81605 +734 734 735 735 76899 +773 773 774 774 6611 +391 391 392 392 91679 +425 425 426 426 81064 +393 393 394 394 52197 +235 235 236 236 4288 +710 710 711 711 61372 +489 489 490 490 15419 +345 345 346 346 55500 +864 864 865 865 41546 +580 580 581 581 48031 +222 222 223 223 78431 +824 824 825 825 49086 +724 724 725 725 61703 +759 759 760 760 21872 +126 126 127 127 36877 +766 766 767 767 53189 +503 503 504 504 82391 +84 84 85 85 19635 +846 846 847 847 61154 +575 575 576 576 9658 +802 802 803 803 39728 +141 141 142 142 53865 +339 339 340 340 43178 +187 187 188 188 65677 +202 202 203 203 97114 +879 879 880 880 75146 +732 732 733 733 53068 +349 349 350 350 92246 +381 381 382 382 11889 +714 714 715 715 72066 +553 553 554 554 32916 +419 419 420 420 99989 +244 244 245 245 20909 +267 267 268 268 72881 +735 735 736 736 18166 +143 143 144 144 96286 +364 364 365 365 96995 +44 44 45 45 60178 +442 442 443 443 74277 +560 560 561 561 46812 +71 71 72 72 36903 +183 183 184 184 10217 +416 416 417 417 71654 +188 188 189 189 1417 +609 609 610 610 81488 +337 337 338 338 11732 +761 761 762 762 94980 +446 446 447 447 86420 +598 598 599 599 60650 +285 285 286 286 64093 +121 121 122 122 989 +92 92 93 93 79863 +64 64 65 65 69684 +679 679 680 680 56251 +701 701 702 702 10261 +440 440 441 441 67744 +101 101 102 102 90473 +658 658 659 659 98633 +594 594 595 595 40246 +525 525 526 526 45574 +154 154 155 155 28691 +648 648 649 649 92434 +430 430 431 431 48618 +277 277 278 278 91556 +869 869 870 870 93344 +280 280 281 281 30322 +386 386 387 387 29945 +616 616 617 617 64993 +792 792 793 793 80147 +717 717 718 718 26538 +662 662 663 663 56835 +29 29 30 30 98140 +450 450 451 451 15158 +94 94 95 95 40276 +526 526 527 527 25058 +39 39 40 40 78658 +777 777 778 778 62607 +716 716 717 717 99926 +359 359 360 360 24282 +25 25 26 26 78203 +68 68 69 69 79989 +733 733 734 734 62696 +836 836 837 837 165 +572 572 573 573 73427 +644 644 645 645 82933 +420 420 421 421 29275 +832 832 833 833 62240 +288 288 289 289 56517 +487 487 488 488 1256 +335 335 336 336 7792 +28 28 29 29 96972 +772 772 773 773 86123 +62 62 63 63 85728 +722 722 723 723 75267 +91 91 92 92 1367 +389 389 390 390 22978 +568 568 569 569 70436 +32 32 33 33 28345 +604 604 605 605 36526 +144 144 145 145 31897 +796 796 797 797 24405 +584 584 585 585 97741 +323 323 324 324 52850 +153 153 154 154 30902 +688 688 689 689 53119 +850 850 851 851 70021 +737 737 738 738 98825 +448 448 449 449 21587 +375 375 376 376 40051 +194 194 195 195 50407 +485 485 486 486 68546 +589 589 590 590 28636 +581 581 582 582 41393 +66 66 67 67 52476 +872 872 873 873 44705 +292 292 293 293 77587 +569 569 570 570 69584 +619 619 620 620 38925 +785 785 786 786 43094 +172 172 173 173 61781 +120 120 121 121 85361 +128 128 129 129 94305 +573 573 574 574 21237 +793 793 794 794 6918 +368 368 369 369 96018 +166 166 167 167 42449 +629 629 630 630 3457 +592 592 593 593 87136 +586 586 587 587 83440 +279 279 280 280 82335 +849 849 850 850 54358 +809 809 810 810 89540 +186 186 187 187 31430 +330 330 331 331 7773 +460 460 461 461 14444 +628 628 629 629 58874 +684 684 685 685 38517 +408 408 409 409 49368 +175 175 176 176 54273 +654 654 655 655 53343 +89 89 90 90 78708 +556 556 557 557 46934 +682 682 683 683 89215 +741 741 742 742 38246 +723 723 724 724 31174 +106 106 107 107 12694 +300 300 301 301 91772 +282 282 283 283 23295 +544 544 545 545 82162 +839 839 840 840 39626 +299 299 300 300 48905 +90 90 91 91 21567 +372 372 373 373 25067 +26 26 27 27 85601 +374 374 375 375 37687 +193 193 194 194 31988 +421 421 422 422 77065 +354 354 355 355 85188 +82 82 83 83 25631 +435 435 436 436 11353 +530 530 531 531 54197 +195 195 196 196 19973 +694 694 695 695 27389 +600 600 601 601 30549 +405 405 406 406 92915 +612 612 613 613 60287 +57 57 58 58 32076 +338 338 339 339 53674 +848 848 849 849 37283 +247 247 248 248 23580 +406 406 407 407 79814 +631 631 632 632 56771 +689 689 690 690 28219 +234 234 235 235 26357 +603 603 604 604 50566 +134 134 135 135 76874 +566 566 567 567 10465 +48 48 49 49 20562 +326 326 327 327 49450 +851 851 852 852 82835 +297 297 298 298 73665 +497 497 498 498 25513 +396 396 397 397 30376 +314 314 315 315 74396 +214 214 215 215 35332 +11 11 12 12 10368 +529 529 530 530 96862 +210 210 211 211 31889 +822 822 823 823 21476 +250 250 251 251 87124 +211 211 212 212 10415 +346 346 347 347 73234 +555 555 556 556 96231 +841 841 842 842 22741 +334 334 335 335 74524 +254 254 255 255 56888 +451 451 452 452 63259 +783 783 784 784 79326 +137 137 138 138 11246 +496 496 497 497 39727 +807 807 808 808 47509 +1 1 2 2 398 +578 578 579 579 62631 +113 113 114 114 4683 +683 683 684 684 6201 +501 501 502 502 3259 +278 278 279 279 40897 +844 844 845 845 13493 +565 565 566 566 9667 +385 385 386 386 27387 +180 180 181 181 59548 +678 678 679 679 31111 +504 504 505 505 18129 +831 831 832 832 39050 +571 571 572 572 57545 +706 706 707 707 42974 +650 650 651 651 52381 +60 60 61 61 81443 +665 665 666 666 50963 +506 506 507 507 6711 +253 253 254 254 52505 +588 588 589 589 53763 +33 33 34 34 21071 +360 360 361 361 5207 +607 607 608 608 10152 +843 843 844 844 70383 +746 746 747 747 7471 +738 738 739 739 73385 +470 470 471 471 30769 +457 457 458 458 77042 +229 229 230 230 3910 +523 523 524 524 88360 +637 637 638 638 68213 +402 402 403 403 21342 +67 67 68 68 86213 +255 255 256 256 73536 +677 677 678 678 2727 +593 593 594 594 75677 +226 226 227 227 61862 +27 27 28 28 26390 +171 171 172 172 99403 +608 608 609 609 55163 +95 95 96 96 95081 +744 744 745 745 88803 +174 174 175 175 58985 +456 456 457 457 20587 +45 45 46 46 30913 +99 99 100 100 3347 +507 507 508 508 8783 +136 136 137 137 92594 +515 515 516 516 27138 +528 528 529 529 58958 +547 547 548 548 18419 +362 362 363 363 19567 +615 615 616 616 34295 +445 445 446 446 6295 +651 651 652 652 58314 +627 627 628 628 85502 +778 778 779 779 80214 +610 610 611 611 77921 +687 687 688 688 65576 +652 652 653 653 11969 +218 218 219 219 54334 +727 727 728 728 80442 +643 643 644 644 783 +257 257 258 258 23981