codeforce刷題 互動題

2022-07-03 03:21:27 字數 1308 閱讀 1140

打codeforces第二週

又遇到了很多有意思的題型,可自己還是太菜了

寫份部落格記錄一下憨憨的自己

做的第一道互動題,記錄一下

this is an interactive problem.這是一道互動題

你通過列印問題詢問他,他給你結果,讓你找到最終的陣列

需要清除快取區,才能保證正確,否則就會idleness limit exceeded(我第一次見這種錯誤,因為沒讀清楚題,一直在第1個測試點報這個錯誤www...還是做題太少了)

我把所有的printf換成cout就ac了或者每次輸出後都加一句cout.flush()fflush(stdout)

題目大意

樣例解釋:給你n=3,說明讓你得到的陣列中只包括1,2,3三個元素,讓你找到最終順序。

根據結果:他找到的最終順序是 1 3 2

你可以通過詢問來查詢,? 1 2 就是詢問你第乙個位置的數%第二個位置數得到的值,在輸入框中給答案 1 。即1%3 -> 1。

解題思路

每當比較兩個位置的數 a , b 的時候,進行兩次 a % b 和 b % a就一定可以得出那個小的數。 1 % 3 = 1 ,

3 % 1 = 0,所以找那個稍微大的數,就是準確的值。

所以,可以運用雙指標,第乙個指標指向左邊那個未得到答案的位置,第二個指標一直向後移動,到最後只有乙個值沒有得到,再尋找一遍誰未賦值再賦值就可以了。

ac**

#include #include using namespace std;

const int maxn = 1e4+4;

int ans[maxn];

bool vis[maxn];

int main()

for(int i=1;i<=n;i++)

for(int i=1;i<=n;i++)

} int xx=0x3f3f3f3f;

for(int i=1;i<=n;i++)

if(xx!=0x3f3f3f3f)else

else}}

cout<

} return 0;

}

刷題刷題 京東

題目 二維陣列為三列多行是陣列,每行存有三個數字,分別用ai,bi,ci標示 當某行的三個數字全都小於另一行的三個數字時,即 ai思路 對於第一列反向排序,保證第一列數從大到小排序。之後用後面的行依次與前面的行進行對比,將無效行的價值置為零。include include includelong l...

智力題刷題

1.caaccac 對 3113313,正如 cacaacac 對 正確答案 d 你的答案 d 正確 a.13133131b b.13133313c c.31311131 d.31311313 解析 a 1,c 3 2.live 對 evil,正如 5232 對 正確答案 c 你的答案 c 正確 a...

刷題小分隊的刷題入口

我們以後的練習,我先大概拉好,到時候我直接從這裡拉題發到群裡,不停的補充 我們或許也可以去打cf或者去牛客網打練習賽,但是還是感覺個人根據自己的情況練習 我們把基礎知識點重新過完的時候,可以先用小白月賽和牛客網寒假集訓檢驗下,然後我在安排一些水題和難題 時間不多了 nyoj入口 kuangbin專題...