銆愰殢鏈恒€戞鐜囧垎鏋愨€斺€攃f1364E
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了銆愰殢鏈恒€戞鐜囧垎鏋愨€斺€攃f1364E相关的知识,希望对你有一定的参考价值。
鏍囩锛?a href='http://www.mamicode.com/so/1/%e7%94%b5%e8%84%91' title='鐢佃剳'>鐢佃剳
int lock 涓暟 epo namespace and random 骞朵笖缁欏畾涓€涓猍0,n-1]鎺掑垪p锛屾瘡娆¤闂?i,j)杩斿洖pi|pj,鏈€澶?269娆¤闂紝鎺ㄥ嚭杩欎釜鎺掑垪
鏈鍏抽敭鍦ㄤ簬纭畾0鐨勪綅缃?/p>
涓€涓粨璁猴細鎴戜滑鍙互閫氳繃涓ゆ璇㈤棶锛屼粠涓変釜鏁颁腑鎺掗櫎鎺変竴涓偗瀹氫笉鏄?鐨勬暟
鍥犳锛氭垜浠淮鎶や綇涓や釜鍊间笅鏍嘺,b,骞朵笖鍋囪0鍦╬a,pb杩欎袱涓暟涓嚭鐜?/p>
鍒濆鏃禷=0,b=1,鐒跺悗鏋氫妇c=[2..n-1]
銆€銆€pa|pc > pb|pc : 閭d箞pa蹇呯劧涓嶆槸0锛屾垜浠妸a鎹㈡垚c
銆€銆€pa|pc < pb|pc锛氶偅涔坧b蹇呯劧涓嶆槸0锛屾垜浠妸b鎹㈡垚c
銆€銆€pa|pc = pb|pc锛氶偅涔坧c蹇呯劧涓嶆槸0锛屼笉鐢ㄦ崲
鏋氫妇瀹屽悗鎴戜滑鍙互纭畾0蹇呭畾鍦╬a,鎴杙b涓や釜鏁颁腑鍑虹幇锛岃€岃纭畾绌剁珶鍦ㄥ摢涓綅缃紝鎴戜滑鍙渶瑕侀殢鏈洪€夊叾浠栦换浣曚竴涓綅缃畑锛?/p>
銆€銆€濡傛灉pa|px != pb|px,灏卞彲浠ョ‘瀹?鐨勪綅缃簡锛岃繖涓楠ら噸澶嶄釜鍑犳(棰樼洰鐨勮寖鍥村厑璁?00+娆?灏卞彲浠?/p>
纭畾0鐨勪綅缃悗锛屽叾浠栨暟璇㈤棶璧锋潵灏卞緢绠€鍗曚簡
ps:鎴戠殑鐢佃剳濂藉儚涓嶈兘鍐檙andom浜嗐€傘€傝糠鎯戙€傘€?/p>
鎼繍涓嬮瑙o紝浠ュ悗鍐嶅啓涓€娆?/p>
#include <bits/stdc++.h> using namespace std; mt19937 rng(chrono::steady_clock::now().time_since_epoch().count()); int p[(1<<11)+5]; int query(int i,int j) { printf("? %d %d ",i,j); fflush(stdout); int ans; scanf("%d",&ans); assert(ans!=-1); return ans; } int main() { int n; scanf("%d",&n); vector<int> qp; for (int i=1;i<=n;i++) qp.push_back(i); int a=qp[0],b=qp[1],val=query(a,b); for (int i=2;i<n;i++) { int tmp=query(b,qp[i]); if (tmp<val) { a=qp[i]; val=tmp; } else if (tmp==val) { b=qp[i]; val=query(a,qp[i]); } } int idx; while (1) { int i=uniform_int_distribution<int>(1,n)(rng); if (i==a || i==b) continue; int t1=query(i,a),t2=query(i,b); if (t1!=t2) { idx=(t1<t2? a:b); break; } } for (int i=1;i<=n;i++) { if (i!=idx) p[i]=query(i,idx); } printf("!"); for (int i=1;i<=n;i++) printf(" %d",p[i]); printf(" "); fflush(stdout); }
以上是关于銆愰殢鏈恒€戞鐜囧垎鏋愨€斺€攃f1364E的主要内容,如果未能解决你的问题,请参考以下文章
Reverses CodeForces - 906E 锛堟渶灏忓洖鏂囧垎瑙o級
楂樻€ц兘MySQL鈥斺€攃ount(*) 鍜?count鍜宑ount(鍒楀悕)鍖哄埆