結果

問題 No.2596 Christmas Eve (Heuristic ver.)
ユーザー 👑 p-adicp-adic
提出日時 2023-12-24 16:20:16
言語 cLay
(20240714-1)
結果
AC  
実行時間 1,145 ms / 1,224 ms
コード長 1,956 bytes
コンパイル時間 3,575 ms
コンパイル使用メモリ 201,928 KB
実行使用メモリ 6,676 KB
スコア 2,809,257
最終ジャッジ日時 2023-12-24 16:22:34
合計ジャッジ時間 137,942 ms
ジャッジサーバーID
(参考情報)
judge15 / judge11
純コード判定しない問題か言語
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 1,145 ms
6,676 KB
testcase_01 AC 961 ms
6,676 KB
testcase_02 AC 925 ms
6,676 KB
testcase_03 AC 1,062 ms
6,676 KB
testcase_04 AC 1,020 ms
6,676 KB
testcase_05 AC 1,001 ms
6,676 KB
testcase_06 AC 986 ms
6,676 KB
testcase_07 AC 1,000 ms
6,676 KB
testcase_08 AC 976 ms
6,676 KB
testcase_09 AC 1,037 ms
6,676 KB
testcase_10 AC 1,000 ms
6,676 KB
testcase_11 AC 970 ms
6,676 KB
testcase_12 AC 945 ms
6,676 KB
testcase_13 AC 932 ms
6,676 KB
testcase_14 AC 1,020 ms
6,676 KB
testcase_15 AC 1,065 ms
6,676 KB
testcase_16 AC 929 ms
6,676 KB
testcase_17 AC 1,002 ms
6,676 KB
testcase_18 AC 1,007 ms
6,676 KB
testcase_19 AC 898 ms
6,676 KB
testcase_20 AC 1,003 ms
6,676 KB
testcase_21 AC 995 ms
6,676 KB
testcase_22 AC 941 ms
6,676 KB
testcase_23 AC 1,012 ms
6,676 KB
testcase_24 AC 944 ms
6,676 KB
testcase_25 AC 1,048 ms
6,676 KB
testcase_26 AC 923 ms
6,676 KB
testcase_27 AC 938 ms
6,676 KB
testcase_28 AC 1,119 ms
6,676 KB
testcase_29 AC 1,040 ms
6,676 KB
testcase_30 AC 904 ms
6,676 KB
testcase_31 AC 1,078 ms
6,676 KB
testcase_32 AC 1,001 ms
6,676 KB
testcase_33 AC 966 ms
6,676 KB
testcase_34 AC 1,048 ms
6,676 KB
testcase_35 AC 1,014 ms
6,676 KB
testcase_36 AC 956 ms
6,676 KB
testcase_37 AC 1,002 ms
6,676 KB
testcase_38 AC 973 ms
6,676 KB
testcase_39 AC 1,007 ms
6,676 KB
testcase_40 AC 916 ms
6,676 KB
testcase_41 AC 844 ms
6,676 KB
testcase_42 AC 949 ms
6,676 KB
testcase_43 AC 1,012 ms
6,676 KB
testcase_44 AC 1,005 ms
6,676 KB
testcase_45 AC 940 ms
6,676 KB
testcase_46 AC 887 ms
6,676 KB
testcase_47 AC 1,009 ms
6,676 KB
testcase_48 AC 1,008 ms
6,676 KB
testcase_49 AC 823 ms
6,676 KB
testcase_50 AC 916 ms
6,676 KB
testcase_51 AC 1,095 ms
6,676 KB
testcase_52 AC 997 ms
6,676 KB
testcase_53 AC 977 ms
6,676 KB
testcase_54 AC 1,016 ms
6,676 KB
testcase_55 AC 933 ms
6,676 KB
testcase_56 AC 824 ms
6,676 KB
testcase_57 AC 975 ms
6,676 KB
testcase_58 AC 1,025 ms
6,676 KB
testcase_59 AC 1,103 ms
6,676 KB
testcase_60 AC 1,011 ms
6,676 KB
testcase_61 AC 923 ms
6,676 KB
testcase_62 AC 912 ms
6,676 KB
testcase_63 AC 1,020 ms
6,676 KB
testcase_64 AC 1,036 ms
6,676 KB
testcase_65 AC 969 ms
6,676 KB
testcase_66 AC 931 ms
6,676 KB
testcase_67 AC 1,002 ms
6,676 KB
testcase_68 AC 1,003 ms
6,676 KB
testcase_69 AC 1,006 ms
6,676 KB
testcase_70 AC 1,033 ms
6,676 KB
testcase_71 AC 952 ms
6,676 KB
testcase_72 AC 871 ms
6,676 KB
testcase_73 AC 900 ms
6,676 KB
testcase_74 AC 1,003 ms
6,676 KB
testcase_75 AC 972 ms
6,676 KB
testcase_76 AC 984 ms
6,676 KB
testcase_77 AC 1,018 ms
6,676 KB
testcase_78 AC 947 ms
6,676 KB
testcase_79 AC 884 ms
6,676 KB
testcase_80 AC 939 ms
6,676 KB
testcase_81 AC 929 ms
6,676 KB
testcase_82 AC 931 ms
6,676 KB
testcase_83 AC 975 ms
6,676 KB
testcase_84 AC 1,059 ms
6,676 KB
testcase_85 AC 1,076 ms
6,676 KB
testcase_86 AC 1,089 ms
6,676 KB
testcase_87 AC 935 ms
6,676 KB
testcase_88 AC 1,005 ms
6,676 KB
testcase_89 AC 935 ms
6,676 KB
testcase_90 AC 1,040 ms
6,676 KB
testcase_91 AC 968 ms
6,676 KB
testcase_92 AC 843 ms
6,676 KB
testcase_93 AC 833 ms
6,676 KB
testcase_94 AC 919 ms
6,676 KB
testcase_95 AC 992 ms
6,676 KB
testcase_96 AC 1,044 ms
6,676 KB
testcase_97 AC 1,036 ms
6,676 KB
testcase_98 AC 1,004 ms
6,676 KB
testcase_99 AC 979 ms
6,676 KB
testcase_100 AC 1,010 ms
6,676 KB
testcase_101 AC 965 ms
6,676 KB
testcase_102 AC 1,099 ms
6,676 KB
testcase_103 AC 990 ms
6,676 KB
testcase_104 AC 912 ms
6,676 KB
testcase_105 AC 946 ms
6,676 KB
testcase_106 AC 1,000 ms
6,676 KB
testcase_107 AC 1,039 ms
6,676 KB
testcase_108 AC 902 ms
6,676 KB
testcase_109 AC 962 ms
6,676 KB
testcase_110 AC 930 ms
6,676 KB
testcase_111 AC 980 ms
6,676 KB
testcase_112 AC 993 ms
6,676 KB
testcase_113 AC 1,040 ms
6,676 KB
testcase_114 AC 924 ms
6,676 KB
testcase_115 AC 1,060 ms
6,676 KB
testcase_116 AC 943 ms
6,676 KB
testcase_117 AC 1,039 ms
6,676 KB
testcase_118 AC 853 ms
6,676 KB
testcase_119 AC 808 ms
6,676 KB
testcase_120 AC 1,024 ms
6,676 KB
testcase_121 AC 976 ms
6,676 KB
testcase_122 AC 899 ms
6,676 KB
testcase_123 AC 1,020 ms
6,676 KB
testcase_124 AC 984 ms
6,676 KB
権限があれば一括ダウンロードができます
コンパイルメッセージ
main.cpp: In function ‘int main()’:
main.cpp:285:14: warning: structured bindings only available with ‘-std=c++17’ or ‘-std=gnu++17’
  285 |         auto&[h,V]=*O.begin();
      |              ^
main.cpp:298:14: warning: structured bindings only available with ‘-std=c++17’ or ‘-std=gnu++17’
  298 |         auto&[h,V]=*O.begin();
      |              ^
main.cpp:311:14: warning: structured bindings only available with ‘-std=c++17’ or ‘-std=gnu++17’
  311 |         auto&[h,V]=*O.rbegin();
      |              ^
main.cpp:324:14: warning: structured bindings only available with ‘-std=c++17’ or ‘-std=gnu++17’
  324 |         auto&[h,V]=*O.rbegin();
      |              ^
main.cpp:340:14: warning: structured bindings only available with ‘-std=c++17’ or ‘-std=gnu++17’
  340 |         auto&[h,V]=*O.begin();
      |              ^
main.cpp:353:14: warning: structured bindings only available with ‘-std=c++17’ or ‘-std=gnu++17’
  353 |         auto&[h,V]=*O.rbegin();
      |              ^
main.cpp:370:12: warning: structured bindings only available with ‘-std=c++17’ or ‘-std=gnu++17’
  370 |       auto&[h,V]=*O.begin();
      |            ^
main.cpp:383:12: warning: structured bindings only available with ‘-std=c++17’ or ‘-std=gnu++17’
  383 |       auto&[h,V]=*O.rbegin();
      |            ^
main.cpp:399:10: warning: structured bindings only available with ‘-std=c++17’ or ‘-std=gnu++17’
  399 |     auto&[h,V]=*j++;
      |          ^

ソースコード

diff #

#define I insert
#define D erase
#define S second
#define V u,v,w,x
#define U upper_bound
#define l get<0>(*O.begin())
#define L get<0>(*O.rbegin())
ll@N,@K,@a[8N],H;set<pair<ll,ll>>A,C,E;rep(i,N)A.I({a[i],i}),C.I({a[2N+2i],2i}),C.I({a[2N+2i+1],2i+1}),E.I({a[6N+i],i});set<tuple<ll,ll,ll,ll,ll>>O;rep(K){auto x=E.begin(),u=A.U({x->first,N}),w=C.U({u->first,2N}),v=w++;O.I({a[N+u->S]+a[4N+v->S]+a[4N+w->S]+a[7N+x->S],u->S,v->S,w->S,x->S});A.D(u),C.D(v),C.D(w),E.D(x);}rep(1d2){REP(n,6d5){if(n%4>2){auto&[h,V]=*O.begin();auto s=C.U({a[2N+v],2N}),e=C.end();if(s!=e)if(h<(H=h-a[4N+v]+a[4N+s->S])<L)O.I({H,u,s->S,w,x}),C.I({a[2N+v],v}),O.D({h,V}),C.D(s);}else if(n%2){auto&[h,V]=*O.begin();auto t=C.U({a[2N+w],2N}),e=C.end();if(t!=e)if(h<(H=h-a[4N+w]+a[4N+t->S])<L)O.I({H,u,v,t->S,x}),C.I({a[2N+w],w}),O.D({h,V}),C.D(t);}else if(n%4){auto&[h,V]=*O.rbegin();auto s=C.U({a[2N+v],2N}),e=C.end();if(s!=e)if(l<(H=h-a[4N+v]+a[4N+s->S])<h)O.I({H,u,s->S,w,x}),C.I({a[2N+v],v}),O.D({h,V}),C.D(s);}else{auto&[h,V]=*O.rbegin();auto t=C.U({a[2N+w],2N}),e=C.end();if(t!=e)if(l<(H=h-a[4N+w]+a[4N+t->S])<h)O.I({H,u,v,t->S,x}),C.I({a[2N+w],w}),O.D({h,V}),C.D(t);}}REP(n,2d5){if(n%2){auto&[h,V]=*O.begin();auto s=A.U({a[u],N}),e=A.end();if(s!=e)if(h<(H=h-a[N+u]+a[N+s->S])<L&&a[s->S]<min(a[2N+v],a[2N,w]))O.I({H,s->S,v,w,x}),A.I({a[u],u}),O.D({h,V}),A.D(s);}else{auto&[h,V]=*O.rbegin();auto t=A.U({a[u],2N}),e=A.end();if(t!=e)if(l<(H=h-a[N+u]+a[N+t->S])<h&&a[t->S]<min(a[2N+v],a[2N,w]))O.I({H,t->S,v,w,x}),A.I({a[u],u}),O.D({h,V}),A.D(t);}}}REP(n,1d5){if(n%2){auto&[h,V]=*O.begin();auto s=E.U({a[6N+x],N}),e=E.end();if(s!=e)if(h<(H=h-a[7N+x]+a[7N+s->S])<L&&a[6N+s->S]<a[u])O.I({H,u,v,w,s->S}),E.I({a[6N+x],x}),O.D({h,V}),E.D(s);}else{auto&[h,V]=*O.rbegin();auto t=E.U({a[6N+x],N}),e=E.end();if(t!=e)if(l<(H=h-a[7N+x]+a[7N+t->S])<h&&a[6N+t->S]<a[u])O.I({H,u,v,w,t->S}),E.I({a[x],x}),O.D({h,V}),E.D(t);}}auto j=O.begin(),e=O.end();while(j!=e){auto&[h,V]=*j++;wt(u+1,v+1,w+1,x+1);}
0