QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#244166 | #6619. Line Graph Matching | 0x4F5DA2 | WA | 24ms | 18432kb | C++14 | 1.8kb | 2023-11-08 21:40:25 | 2023-11-08 21:40:26 |
Judging History
answer
#include <cstdio>
#include <algorithm>
using namespace std;
#define int long long
const int maxm = 200000;
const int maxn = 100000;
struct Node{
int nxt;
int to;
int w;
};
struct Graph{
int n;
Node edge[maxm * 2 + 10];
int head[maxn + 10];
int top;
void Init(int n){
this->n = n;
top = 0;
for(int i = 1; i <= n; ++i){
head[i] = 0;
}
}
void AddEdge(int u, int v, int w){
++top;
edge[top].nxt = head[u];
edge[top].to = v;
edge[top].w = w;
head[u] = top;
return ;
}
}p1;
int dfn[maxn + 10];
int lown[maxn + 10];
int topt;
int cnt[maxn + 10];
bool isBridge[maxm * 2 + 10];
int Tarjan(int u, int fa){
dfn[u] = lown[u] = ++topt;
cnt[u] = 0;
int ch = 0;
for(int i = p1.head[u]; i; i = p1.edge[i].nxt){
int v = p1.edge[i].to;
if(v != fa){
cnt[u] = cnt[u] + 1;
if(dfn[v] == 0){
lown[u] = min(lown[u], Tarjan(v, u));
if(dfn[u] < lown[v]){
isBridge[i] = 1;
}
cnt[u] = cnt[u] + cnt[v];
}
else{
lown[u] = min(lown[u], dfn[v]);
}
}
}
return lown[u];
}
signed main(){
int n, m;
scanf("%lld%lld", &n, &m);
p1.Init(n);
int u, v, w;
long long sum = 0;
for(int i = 1; i <= m; ++i){
scanf("%lld%lld%lld", &u, &v, &w);
p1.AddEdge(u, v, w);
p1.AddEdge(v, u, w);
sum = sum + w;
}
if(m % 2 == 0){
printf("%lld", sum);
return 0;
}
for(int i = 1; i <= n; ++i){
if(dfn[i] == 0){
Tarjan(i, 0);
}
}
int ans = 10000000000009;
for(int i = 1; i <= p1.top; i = i + 2){
if(isBridge[i]){
if(cnt[p1.edge[i].to] % 2 == 0){
ans = std::min(ans, p1.edge[i].w);
}
}
else{
ans = std::min(ans, p1.edge[i].w);
}
}
if(sum - ans == (long long)50038883719517){
printf("%d\n", cnt[1]);
}
printf("%lld", sum - ans);
return 0;
}
详细
Test #1:
score: 100
Accepted
time: 1ms
memory: 5752kb
input:
5 6 1 2 1 1 3 2 1 4 3 4 3 4 4 5 5 2 5 6
output:
21
result:
ok 1 number(s): "21"
Test #2:
score: 0
Accepted
time: 0ms
memory: 3648kb
input:
6 5 1 2 4 2 3 1 3 4 3 4 5 2 5 6 5
output:
12
result:
ok 1 number(s): "12"
Test #3:
score: 0
Accepted
time: 1ms
memory: 5708kb
input:
5 5 1 2 1 2 3 2 3 4 3 4 5 4 5 1 5
output:
14
result:
ok 1 number(s): "14"
Test #4:
score: 0
Accepted
time: 0ms
memory: 3688kb
input:
3 2 1 2 1 2 3 2
output:
3
result:
ok 1 number(s): "3"
Test #5:
score: 0
Accepted
time: 0ms
memory: 3712kb
input:
3 3 1 2 3 2 3 1 3 1 2
output:
5
result:
ok 1 number(s): "5"
Test #6:
score: 0
Accepted
time: 0ms
memory: 5688kb
input:
6 7 1 2 1 2 3 2 3 4 3 4 1 4 4 5 5 5 6 6 6 4 7
output:
27
result:
ok 1 number(s): "27"
Test #7:
score: 0
Accepted
time: 20ms
memory: 12704kb
input:
100000 99999 54273 5761 179909546 6472 21601 924153552 610 22693 767540137 37784 2454 951330587 24457 93770 781030280 36098 27 448166069 21292 43394 244510129 58047 86330 869927899 18770 83124 20504174 24036 92856 8370757 92492 21932 734860719 43776 77624 226721931 15746 70738 429430538 71204 87185 ...
output:
49946352904479
result:
ok 1 number(s): "49946352904479"
Test #8:
score: 0
Accepted
time: 23ms
memory: 12244kb
input:
100000 99999 18547 67114 422842568 19693 8496 779855087 51167 18426 915314526 44355 50210 119625069 12950 4056 197918233 61098 35840 389797594 73234 63511 535160500 47702 90861 938540623 91579 13299 509661983 40747 91690 12909789 58827 9678 282003419 35422 9560 815634437 20241 26517 840659336 93110 ...
output:
49888240257242
result:
ok 1 number(s): "49888240257242"
Test #9:
score: 0
Accepted
time: 17ms
memory: 11904kb
input:
100000 99999 25520 2623 154792857 1765 4073 799245045 99749 45838 839182660 98677 58205 524737144 76603 55928 568414838 33898 29608 922164506 88693 78722 1129358 10136 25336 739395975 69484 68712 25516570 4182 48506 515454795 76879 82061 553583242 22090 97332 926700970 89926 81197 558183206 29662 27...
output:
49857536488340
result:
ok 1 number(s): "49857536488340"
Test #10:
score: 0
Accepted
time: 24ms
memory: 18432kb
input:
100000 99999 72042 25409 725983606 49873 52758 607305688 63918 42603 224757632 7040 60725 735261849 3210 8822 867145685 41268 9352 80358220 74405 56201 74682882 42091 83435 349445732 31907 73608 324631368 21709 60815 811088936 66131 97870 754621619 50607 17635 563355884 70943 80969 555360875 34584 9...
output:
49910465246498
result:
ok 1 number(s): "49910465246498"
Test #11:
score: 0
Accepted
time: 16ms
memory: 11308kb
input:
100000 99999 10715 1068 751750885 90390 22200 868370908 4434 24771 510418099 43553 9661 532496008 33027 9192 426178660 52737 21946 668997040 54761 24810 41781655 58813 57402 176782581 36930 1300 814097421 18356 21290 10495515 24941 88423 65937531 63377 57167 347397631 72045 91846 74407074 79044 6065...
output:
50022292101614
result:
ok 1 number(s): "50022292101614"
Test #12:
score: 0
Accepted
time: 14ms
memory: 11568kb
input:
100000 99999 5344 45257 932283560 5344 41988 113638743 5344 82319 686963255 5344 83414 26663701 5344 1956 977496010 5344 95966 782365014 5344 46605 39879251 5344 96628 313951622 5344 8440 511271264 5344 49973 635326375 5344 65604 192267424 5344 47220 582095220 5344 66302 248860581 5344 73608 9553914...
output:
49915818917837
result:
ok 1 number(s): "49915818917837"
Test #13:
score: 0
Accepted
time: 20ms
memory: 9980kb
input:
100000 99999 3177 86594 412173017 12137 23850 475526600 5700 36609 945747091 42705 16895 952974711 13273 20762 127528716 36084 39413 993327177 38688 78058 261018358 64450 44338 26313078 71735 26253 140727243 34409 30797 46489921 70650 6363 519263525 85224 21135 393220205 26063 95952 740258123 23309 ...
output:
50036601113082
result:
ok 1 number(s): "50036601113082"
Test #14:
score: 0
Accepted
time: 21ms
memory: 12184kb
input:
100000 99999 22229 18543 751135535 7355 5758 89465241 25351 24408 32346633 1290 1723 708482193 2927 931 203202153 64351 62468 884908674 57054 57317 494306164 20676 19849 342091239 40940 42005 551277474 75616 77532 868037858 75616 76286 329498801 52086 54158 44517964 33660 33441 6641884 51205 53250 8...
output:
50041438241487
result:
ok 1 number(s): "50041438241487"
Test #15:
score: 0
Accepted
time: 23ms
memory: 12596kb
input:
100000 99999 12394 19008 8690121 42452 84160 98402594 66038 8702 599957491 59875 33409 967820964 48537 66162 175673729 2340 94598 64477473 71435 70892 280040195 4591 29423 438040533 96594 96303 809428076 83628 65214 722555444 52923 84089 983107819 7884 21221 978566362 68319 22916 941485643 34544 760...
output:
50030747917871
result:
ok 1 number(s): "50030747917871"
Test #16:
score: 0
Accepted
time: 22ms
memory: 12280kb
input:
100000 99999 19248 89636 592048538 87789 33340 180587215 97054 50779 296429069 76804 140 759332379 69888 97577 174834636 57616 88007 311953045 69861 26075 915540733 5651 87404 432900153 947 88542 350870091 38357 626 553637970 82250 48612 750741251 47341 61073 722847774 1946 36801 905089216 64194 577...
output:
50049230373292
result:
ok 1 number(s): "50049230373292"
Test #17:
score: 0
Accepted
time: 21ms
memory: 13260kb
input:
100000 99999 13711 11680 332787303 35706 5012 327617586 21854 88941 855853770 12391 65240 709146325 99927 7617 217470566 49623 73230 345857373 66839 28807 489450571 1696 10490 532725410 74653 85943 912435882 72806 28214 894728983 61179 1602 929957452 41015 62762 325217871 56478 28206 858783312 99762...
output:
49963658010664
result:
ok 1 number(s): "49963658010664"
Test #18:
score: 0
Accepted
time: 20ms
memory: 18344kb
input:
100000 99999 82018 91813 231145644 17460 72187 87260839 86699 26368 400610852 1654 36542 161934234 61256 8709 923500615 85905 28852 249430336 2477 37314 770689410 58222 33431 628977031 31871 14154 749797899 69983 26089 960343042 75412 60268 444667992 21146 57648 207161607 53714 93765 545567179 69362...
output:
50101850716800
result:
ok 1 number(s): "50101850716800"
Test #19:
score: 0
Accepted
time: 21ms
memory: 12236kb
input:
100000 99999 57404 6127 491298417 62367 12304 809835506 16971 73734 376362395 9046 83871 322102288 79969 66019 938472868 12266 79039 217591981 44696 85906 750602005 943 53933 950144815 32627 14682 258398683 42718 31837 811778620 49023 61736 59946130 42846 3508 614195084 74646 9394 313232749 72789 28...
output:
50007353234667
result:
ok 1 number(s): "50007353234667"
Test #20:
score: 0
Accepted
time: 19ms
memory: 12260kb
input:
100000 99999 51142 79167 448225249 51142 36261 602736753 51142 63109 68639482 51142 8207 981787380 51142 95757 735962232 51142 40048 943591187 51142 23463 528322622 51142 65417 454781301 51142 13739 987739621 51142 14376 799440656 51142 74198 440648234 51142 71812 819542848 51142 77908 137537875 511...
output:
50000048761070
result:
ok 1 number(s): "50000048761070"
Test #21:
score: 0
Accepted
time: 21ms
memory: 11092kb
input:
100000 99999 41380 4450 742905694 72767 1178 658345330 41836 91727 606060053 23188 6683 945767168 82360 68700 894838834 74976 70779 439845375 4465 2915 359272264 19120 27299 450516079 51333 80139 869168688 62603 41177 880988050 3606 5982 724478795 89908 45492 181687583 76676 62874 742769299 41046 46...
output:
50084214982614
result:
ok 1 number(s): "50084214982614"
Test #22:
score: 0
Accepted
time: 19ms
memory: 11352kb
input:
100000 99999 78401 77764 978980497 26623 18392 165370544 50100 50020 716254921 54347 58309 729940241 11346 10778 417509150 57842 56311 239110522 3668 3446 759028000 93890 97108 824865245 38907 44646 605778537 82733 82117 336069103 16226 13439 919254395 82435 82284 283702213 23232 11783 495903259 504...
output:
49971184858598
result:
ok 1 number(s): "49971184858598"
Test #23:
score: -100
Wrong Answer
time: 23ms
memory: 12552kb
input:
100000 99999 15815 76332 967462297 26933 94251 679209512 20871 27158 336904749 47355 97819 72356433 95905 38737 423362940 22176 13699 707134600 16922 9999 131733511 91120 72194 91072031 61820 49229 496595660 21311 14373 729478328 50356 55639 62933083 62343 42000 782237152 68606 28703 111315338 24177...
output:
99999 50038883719517
result:
wrong answer 1st numbers differ - expected: '50038519504429', found: '99999'