網(wǎng)易有道2017內(nèi)推編程題

網(wǎng)易有道2017內(nèi)推編程題

ID:46966095

大小:25.08 KB

頁數(shù):7頁

時間:2019-12-01

網(wǎng)易有道2017內(nèi)推編程題_第1頁
網(wǎng)易有道2017內(nèi)推編程題_第2頁
網(wǎng)易有道2017內(nèi)推編程題_第3頁
網(wǎng)易有道2017內(nèi)推編程題_第4頁
網(wǎng)易有道2017內(nèi)推編程題_第5頁
資源描述:

《網(wǎng)易有道2017內(nèi)推編程題》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。

1、....?網(wǎng)易有道2017內(nèi)推編程題1[編程題]洗牌22[編程題]構(gòu)造隊列5學(xué)習(xí)參考....1[編程題]洗牌洗牌在生活中十分常見,現(xiàn)在需要寫一個程序模擬洗牌的過程?,F(xiàn)在需要洗2n張牌,從上到下依次是第1張,第2張,第3張一直到第2n張。首先,我們把這2n張牌分成兩堆,左手拿著第1張到第n張(上半堆),右手拿著第n+1張到第2n張(下半堆)。接著就開始洗牌的過程,先放下右手的最后一張牌,再放下左手的最后一張牌,接著放下右手的倒數(shù)第二張牌,再放下左手的倒數(shù)第二張牌,直到最后放下左手的第一張牌。接著把牌合并起來就可以了。例如有6張牌,

2、最開始牌的序列是1,2,3,4,5,6。首先分成兩組,左手拿著1,2,3;右手拿著4,5,6。在洗牌過程中按順序放下了6,3,5,2,4,1。把這六張牌再次合成一組牌之后,我們按照從上往下的順序看這組牌,就變成了序列1,4,2,5,3,6?,F(xiàn)在給出一個原始牌組,請輸出這副牌洗牌k次之后從上往下的序列。?輸入描述:第一行一個數(shù)T(T≤100),表示數(shù)據(jù)組數(shù)。對于每組數(shù)據(jù),第一行兩個數(shù)n,k(1≤n,k≤100),接下來一行有2n個數(shù)a1,a2,...,a2n(1≤ai≤1000000000)。表示原始牌組從上到下的序列。輸出描述:

3、對于每組數(shù)據(jù),輸出一行,最終的序列。數(shù)字之間用空格隔開,不要在行末輸出多余的空格。輸入例子1:33112345632123456221111學(xué)習(xí)參考....輸出例子1:14253615432611111.#include2.#include3.#include4.#include5.usingnamespacestd;6.constintN=1005;7.intn,k,a[N],b[N];8.9.intmain(){10.intt;scanf("%d

4、",&t);11.while(t--){12.scanf("%d%d",&n,&k);n*=2;13.for(inti=1;i<=n;i++)14.scanf("%d",&a[i]);15.while(k--){16.for(inti=1;i<=n;i++)17.b[i]=a[i];18.for(inti=1,j=n/2+1;i<=n/2;i++,j++){19.a[2*i-1]=b[i];20.a[2*i]=b[j];21.}22.}學(xué)習(xí)參考....1.for(inti=1;i<=n;i++){2.printf("%d%c",

5、a[i],""[i==n]);3.}4.}5.return0;6.}importjava.util.Scanner;??/**?*每次讀取一個數(shù)之后,算出他經(jīng)過k次洗牌后的位置,只用一個長度為2n數(shù)組用來輸出?*根據(jù)當(dāng)前數(shù)的位置,可以算出經(jīng)過一次洗牌后的位置?*如果當(dāng)前數(shù)小于等于n(即在左手),則他下次出現(xiàn)的位置是2*當(dāng)前位置-1?*如果當(dāng)前位置大于n(即在右手),則他下次出現(xiàn)的位置是2*(當(dāng)前位置-n)?*個人建議在線面試題的時候如果5分鐘內(nèi)沒想到好方法建議就使用暴力方法,?*畢竟測試用例不通過什么都沒用?*Created

6、bylizoon2016/8/20.?*/publicclassMain{????publicstaticvoidmain(String[]args){??????Scannersc=?newScanner(System.in);??????intgroups=sc.nextInt();??????while(groups-->?0){????????intn=sc.nextInt();????????intk=sc.nextInt();????????int[]res=?newint[2*n];????????for(inti

7、=0;i<2*n;i++){??????????inttmp=i+?1;??????????for(intj=?0;j?0)System.out.print(res[0]);???

8、?????for(inti=?1;i

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。