Submission #62642
Source Code Expand
#include <iostream> #include <vector> #include <map> #include <algorithm> using namespace std; typedef pair<int, int> Pair; const int kMod = 1000000007; struct Train { int s, t; bool operator<(const Train& other) const { if (s != other.s) return s < other.s; return t < other.t; } }; int main() { ios_base::sync_with_stdio(false); cin.tie(0); int n, m; cin >> n >> m; vector<Train> trains(m); for (int i = 0; i < m; i++) { cin >> trains[i].s >> trains[i].t; --trains[i].s, --trains[i].t; } sort(trains.begin(), trains.end()); map<Pair, int> counts; counts[Pair(0, 0)] = 1; for (int i = 0; i < m; i++) { int s = trains[i].s; int t = trains[i].t + 1; map<Pair, int> next(counts); for (map<Pair, int>::reverse_iterator p = counts.rbegin(); p != counts.rend(); ++p) { int u = p->first.first, v = p->first.second; if (t <= u) { next[Pair(u, v)] = (next[Pair(u, v)] + counts[Pair(u, v)]) % kMod; continue; } if (s > u) continue; if (t <= v) { next[Pair(t, v)] = (next[Pair(t, v)] + counts[Pair(u, v)]) % kMod; continue; } if (s <= u) { next[Pair(v, t)] = (next[Pair(v, t)] + counts[Pair(u, v)]) % kMod; continue; } } counts.swap(next); } cout << counts[Pair(n, n)] << endl; return 0; }
Submission Info
Submission Time | |
---|---|
Task | H - ダイヤグラム |
User | yuizumi |
Language | C++ (G++ 4.6.4) |
Score | 100 |
Code Size | 1615 Byte |
Status | AC |
Exec Time | 271 ms |
Memory | 2228 KB |
Judge Result
Set Name | small | medium | large | ||||||
---|---|---|---|---|---|---|---|---|---|
Score / Max Score | 10 / 10 | 40 / 40 | 50 / 50 | ||||||
Status |
|
|
|
Set Name | Test Cases |
---|---|
small | small/case_000.txt, small/case_001.txt, small/case_002.txt, small/case_003.txt, small/case_004.txt, small/case_005.txt, small/case_006.txt, small/case_007.txt, small/case_008.txt, small/case_009.txt, small/case_010.txt, small/case_011.txt, small/case_012.txt, small/case_013.txt, small/case_014.txt, small/case_015.txt, small/case_016.txt, small/case_017.txt, small/case_018.txt, small/case_019.txt, small/case_020.txt, small/case_021.txt, small/case_022.txt, small/case_023.txt |
medium | medium/case_000.txt, medium/case_001.txt, medium/case_002.txt, medium/case_003.txt, medium/case_004.txt, medium/case_005.txt, medium/case_006.txt, medium/case_007.txt, medium/case_008.txt, medium/case_009.txt, medium/case_010.txt, medium/case_011.txt, medium/case_012.txt, medium/case_013.txt, medium/case_014.txt, medium/case_015.txt, medium/case_016.txt, medium/case_017.txt, medium/case_018.txt, medium/case_019.txt, medium/case_020.txt, medium/case_021.txt, medium/case_022.txt, medium/case_023.txt, medium/medium_case_000.txt, medium/medium_case_001.txt, medium/medium_case_002.txt, medium/medium_case_003.txt, medium/medium_case_004.txt, medium/medium_case_005.txt, medium/medium_case_006.txt, medium/medium_case_007.txt, medium/medium_case_008.txt, medium/medium_case_009.txt, medium/medium_case_010.txt, medium/medium_case_011.txt, medium/medium_case_012.txt, medium/medium_case_013.txt, medium/medium_case_014.txt, medium/medium_case_015.txt, medium/medium_case_016.txt, medium/medium_case_017.txt, medium/medium_case_018.txt, medium/medium_case_019.txt, medium/medium_case_020.txt |
large | large/case_000.txt, large/case_001.txt, large/case_002.txt, large/case_003.txt, large/case_004.txt, large/case_005.txt, large/case_006.txt, large/case_007.txt, large/case_008.txt, large/case_009.txt, large/case_010.txt, large/case_011.txt, large/case_012.txt, large/case_013.txt, large/case_014.txt, large/case_015.txt, large/case_016.txt, large/case_017.txt, large/case_018.txt, large/case_019.txt, large/case_020.txt, large/case_021.txt, large/case_022.txt, large/case_023.txt, large/large_case_000.txt, large/large_case_001.txt, large/large_case_002.txt, large/large_case_003.txt, large/large_case_004.txt, large/large_case_005.txt, large/large_case_006.txt, large/large_case_007.txt, large/large_case_008.txt, large/large_case_009.txt, large/large_case_010.txt, large/large_case_011.txt, large/large_case_012.txt, large/large_case_013.txt, large/large_case_014.txt, large/large_case_015.txt, large/large_case_016.txt, large/large_case_017.txt, large/large_case_018.txt, large/large_case_019.txt, large/large_case_020.txt, large/large_case_021.txt, large/large_case_022.txt, large/large_case_023.txt, large/large_case_024.txt, large/large_case_025.txt, large/large_case_026.txt, large/large_case_027.txt, large/large_case_028.txt, large/large_case_029.txt, large/medium_case_000.txt, large/medium_case_001.txt, large/medium_case_002.txt, large/medium_case_003.txt, large/medium_case_004.txt, large/medium_case_005.txt, large/medium_case_006.txt, large/medium_case_007.txt, large/medium_case_008.txt, large/medium_case_009.txt, large/medium_case_010.txt, large/medium_case_011.txt, large/medium_case_012.txt, large/medium_case_013.txt, large/medium_case_014.txt, large/medium_case_015.txt, large/medium_case_016.txt, large/medium_case_017.txt, large/medium_case_018.txt, large/medium_case_019.txt, large/medium_case_020.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
large/case_000.txt | AC | 22 ms | 752 KB |
large/case_001.txt | AC | 20 ms | 784 KB |
large/case_002.txt | AC | 20 ms | 784 KB |
large/case_003.txt | AC | 19 ms | 784 KB |
large/case_004.txt | AC | 23 ms | 688 KB |
large/case_005.txt | AC | 24 ms | 784 KB |
large/case_006.txt | AC | 20 ms | 784 KB |
large/case_007.txt | AC | 20 ms | 668 KB |
large/case_008.txt | AC | 20 ms | 656 KB |
large/case_009.txt | AC | 21 ms | 792 KB |
large/case_010.txt | AC | 21 ms | 780 KB |
large/case_011.txt | AC | 21 ms | 736 KB |
large/case_012.txt | AC | 19 ms | 788 KB |
large/case_013.txt | AC | 20 ms | 784 KB |
large/case_014.txt | AC | 20 ms | 696 KB |
large/case_015.txt | AC | 21 ms | 784 KB |
large/case_016.txt | AC | 19 ms | 768 KB |
large/case_017.txt | AC | 19 ms | 784 KB |
large/case_018.txt | AC | 21 ms | 780 KB |
large/case_019.txt | AC | 21 ms | 796 KB |
large/case_020.txt | AC | 19 ms | 784 KB |
large/case_021.txt | AC | 21 ms | 784 KB |
large/case_022.txt | AC | 20 ms | 696 KB |
large/case_023.txt | AC | 20 ms | 788 KB |
large/large_case_000.txt | AC | 227 ms | 1980 KB |
large/large_case_001.txt | AC | 211 ms | 1968 KB |
large/large_case_002.txt | AC | 205 ms | 1844 KB |
large/large_case_003.txt | AC | 196 ms | 1960 KB |
large/large_case_004.txt | AC | 236 ms | 2096 KB |
large/large_case_005.txt | AC | 271 ms | 2220 KB |
large/large_case_006.txt | AC | 265 ms | 2228 KB |
large/large_case_007.txt | AC | 258 ms | 2068 KB |
large/large_case_008.txt | AC | 219 ms | 1976 KB |
large/large_case_009.txt | AC | 208 ms | 1972 KB |
large/large_case_010.txt | AC | 157 ms | 1340 KB |
large/large_case_011.txt | AC | 57 ms | 940 KB |
large/large_case_012.txt | AC | 139 ms | 1328 KB |
large/large_case_013.txt | AC | 93 ms | 1072 KB |
large/large_case_014.txt | AC | 115 ms | 1212 KB |
large/large_case_015.txt | AC | 38 ms | 816 KB |
large/large_case_016.txt | AC | 118 ms | 1208 KB |
large/large_case_017.txt | AC | 149 ms | 1332 KB |
large/large_case_018.txt | AC | 134 ms | 1212 KB |
large/large_case_019.txt | AC | 20 ms | 780 KB |
large/large_case_020.txt | AC | 210 ms | 1980 KB |
large/large_case_021.txt | AC | 238 ms | 2096 KB |
large/large_case_022.txt | AC | 230 ms | 2104 KB |
large/large_case_023.txt | AC | 254 ms | 2172 KB |
large/large_case_024.txt | AC | 239 ms | 2100 KB |
large/large_case_025.txt | AC | 210 ms | 2024 KB |
large/large_case_026.txt | AC | 214 ms | 1920 KB |
large/large_case_027.txt | AC | 226 ms | 1976 KB |
large/large_case_028.txt | AC | 267 ms | 2228 KB |
large/large_case_029.txt | AC | 213 ms | 1900 KB |
large/medium_case_000.txt | AC | 20 ms | 784 KB |
large/medium_case_001.txt | AC | 21 ms | 764 KB |
large/medium_case_002.txt | AC | 20 ms | 788 KB |
large/medium_case_003.txt | AC | 20 ms | 788 KB |
large/medium_case_004.txt | AC | 20 ms | 780 KB |
large/medium_case_005.txt | AC | 20 ms | 692 KB |
large/medium_case_006.txt | AC | 20 ms | 780 KB |
large/medium_case_007.txt | AC | 21 ms | 776 KB |
large/medium_case_008.txt | AC | 20 ms | 784 KB |
large/medium_case_009.txt | AC | 20 ms | 788 KB |
large/medium_case_010.txt | AC | 21 ms | 788 KB |
large/medium_case_011.txt | AC | 19 ms | 764 KB |
large/medium_case_012.txt | AC | 20 ms | 780 KB |
large/medium_case_013.txt | AC | 21 ms | 672 KB |
large/medium_case_014.txt | AC | 20 ms | 780 KB |
large/medium_case_015.txt | AC | 21 ms | 792 KB |
large/medium_case_016.txt | AC | 19 ms | 816 KB |
large/medium_case_017.txt | AC | 20 ms | 780 KB |
large/medium_case_018.txt | AC | 20 ms | 792 KB |
large/medium_case_019.txt | AC | 20 ms | 792 KB |
large/medium_case_020.txt | AC | 20 ms | 780 KB |
medium/case_000.txt | AC | 20 ms | 784 KB |
medium/case_001.txt | AC | 20 ms | 780 KB |
medium/case_002.txt | AC | 20 ms | 772 KB |
medium/case_003.txt | AC | 21 ms | 788 KB |
medium/case_004.txt | AC | 20 ms | 688 KB |
medium/case_005.txt | AC | 22 ms | 792 KB |
medium/case_006.txt | AC | 20 ms | 780 KB |
medium/case_007.txt | AC | 20 ms | 784 KB |
medium/case_008.txt | AC | 20 ms | 784 KB |
medium/case_009.txt | AC | 20 ms | 784 KB |
medium/case_010.txt | AC | 19 ms | 784 KB |
medium/case_011.txt | AC | 20 ms | 784 KB |
medium/case_012.txt | AC | 21 ms | 692 KB |
medium/case_013.txt | AC | 20 ms | 792 KB |
medium/case_014.txt | AC | 20 ms | 780 KB |
medium/case_015.txt | AC | 21 ms | 776 KB |
medium/case_016.txt | AC | 20 ms | 784 KB |
medium/case_017.txt | AC | 20 ms | 784 KB |
medium/case_018.txt | AC | 21 ms | 784 KB |
medium/case_019.txt | AC | 19 ms | 772 KB |
medium/case_020.txt | AC | 20 ms | 792 KB |
medium/case_021.txt | AC | 20 ms | 772 KB |
medium/case_022.txt | AC | 20 ms | 780 KB |
medium/case_023.txt | AC | 19 ms | 776 KB |
medium/medium_case_000.txt | AC | 19 ms | 780 KB |
medium/medium_case_001.txt | AC | 21 ms | 776 KB |
medium/medium_case_002.txt | AC | 20 ms | 784 KB |
medium/medium_case_003.txt | AC | 20 ms | 784 KB |
medium/medium_case_004.txt | AC | 20 ms | 788 KB |
medium/medium_case_005.txt | AC | 21 ms | 632 KB |
medium/medium_case_006.txt | AC | 21 ms | 632 KB |
medium/medium_case_007.txt | AC | 21 ms | 760 KB |
medium/medium_case_008.txt | AC | 20 ms | 788 KB |
medium/medium_case_009.txt | AC | 21 ms | 788 KB |
medium/medium_case_010.txt | AC | 20 ms | 792 KB |
medium/medium_case_011.txt | AC | 21 ms | 780 KB |
medium/medium_case_012.txt | AC | 19 ms | 756 KB |
medium/medium_case_013.txt | AC | 22 ms | 768 KB |
medium/medium_case_014.txt | AC | 20 ms | 784 KB |
medium/medium_case_015.txt | AC | 21 ms | 788 KB |
medium/medium_case_016.txt | AC | 21 ms | 732 KB |
medium/medium_case_017.txt | AC | 20 ms | 652 KB |
medium/medium_case_018.txt | AC | 22 ms | 744 KB |
medium/medium_case_019.txt | AC | 20 ms | 780 KB |
medium/medium_case_020.txt | AC | 22 ms | 772 KB |
small/case_000.txt | AC | 19 ms | 784 KB |
small/case_001.txt | AC | 22 ms | 652 KB |
small/case_002.txt | AC | 22 ms | 660 KB |
small/case_003.txt | AC | 20 ms | 784 KB |
small/case_004.txt | AC | 20 ms | 788 KB |
small/case_005.txt | AC | 19 ms | 780 KB |
small/case_006.txt | AC | 20 ms | 780 KB |
small/case_007.txt | AC | 22 ms | 668 KB |
small/case_008.txt | AC | 20 ms | 788 KB |
small/case_009.txt | AC | 21 ms | 788 KB |
small/case_010.txt | AC | 19 ms | 784 KB |
small/case_011.txt | AC | 22 ms | 692 KB |
small/case_012.txt | AC | 20 ms | 784 KB |
small/case_013.txt | AC | 20 ms | 788 KB |
small/case_014.txt | AC | 20 ms | 784 KB |
small/case_015.txt | AC | 20 ms | 788 KB |
small/case_016.txt | AC | 22 ms | 656 KB |
small/case_017.txt | AC | 19 ms | 780 KB |
small/case_018.txt | AC | 21 ms | 776 KB |
small/case_019.txt | AC | 22 ms | 784 KB |
small/case_020.txt | AC | 21 ms | 788 KB |
small/case_021.txt | AC | 20 ms | 764 KB |
small/case_022.txt | AC | 21 ms | 788 KB |
small/case_023.txt | AC | 21 ms | 780 KB |