青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

f(sixleaves) = sixleaves

重劍無鋒 大巧不工

  C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
  95 隨筆 :: 0 文章 :: 7 評論 :: 0 Trackbacks

題目描述

為了縮短領救濟品的隊伍,NNGLRP決定了以下策略:每天所有來申請救濟品的人會被放在一個大圓圈,面朝里面。選定一個人為編號 1 號,其他的就從那個人開始逆時針開始編號直到 N。一個官員一開始逆時針數,數 k 個申請者,然后另一個官員第 N 個始順時針方向數 m 個申請者,這兩個人就被送去再教育。如果兩個官員數的是同一個人,那個人則被送去從政,然后2個官員再在剩下的人里面繼續選直到沒人剩下來,注意兩個被選 中的人是同時走掉的,所以就有可能兩個官員選中一個人。

[編輯]Input

輸入含有多組測試資料,每組測試資料一列含有三個數 N,k 和 m(k, m > 0,0<N<20)。 當輸入為 0 0 0 代表輸入結束。

[編輯]Output

對每組測試資料輸出一列。輸出被選中的申請者的編號順序(一對一對的)。每個數的寬度為 3 。每一對前面的那個編號為逆時針數的官員選出的,后面的那個編號為順時針數的官員選出的(但是如果這2個官員選出同一個人,那就只會有一個編號)。每一對 之間以逗號分開。格式請參考Sample Output。

[編輯]Sample Input

10 4 3 
13 17 42
7 8 47
0 0 0

[編輯]Sample Output

 4 8, 9 5, 3 1, 2 6, 10, 7 
4 11, 10 1, 8 6, 13 7, 3, 5 12, 9 2
1 3, 5 7, 2 4, 6
這道題目有點繞,也講得不嚴密。這里主要說下幾個容易錯的地方。
首先是你每次在寫程序之前,都要十分清除規則,題目中的人是圍著一圈,而且第一個的左邊是第N個人,也就是它是逆時針標號的。這個十分關鍵。
其次是go函數的實現,go函數是數過L個人,返回最后一個的位置。我并不贊同,某些版本數組是從1開始計數,因為這樣對于表達式的表達十分不方便。你可以
自己嘗試用1來做,會很不方便。就是因為go函數是這樣一個函數,所以當我們在下一次迭代的時候的開始位置,一定是為那個人出去的位置,也就是a[i]=0的位置。
所以我們第一次迭代的位置,原本A是應該在位置0,B在位置n-1。這時候只能是A在n-1和B在0.(你可以用數學歸納法理解)。
 1 #include <stdio.h>
 2 
 3 #define MAXN 25
 4 int n,k,m;
 5 int a[MAXN];
 6 int go(int p, int d, int k);//數過k個人,開始位置p必須是數1時候的前一個位置。 
 7 int main() {
 8     while (scanf("%d%d%d", &n, &k, &m) == 3 && n) {
 9         for (int i = 0; i < n; i++) {
10             a[i] = i + 1;
11         }
12         int left = n;
13         int pA = n-1, pB = 0;
14         int pANext,pBNext;
15         while (left) {
16             pA = go(pA, 1, k);//1表示逆時針,因為它是逆時針標號
17             pB = go(pB, -1, m);//-1表示順時針
18             printf("%3d", pA + 1); left--;
19             if (pA != pB) { printf("%3d", pB + 1); left--;}
20             a[pA] = a[pB] = 0;
21             if (left) printf(",");
22         }
23         printf("\n");
24     }    
25     return 0;
26 }
27 int go(int p, int d, int L) {
28     while (L--) {
29         do { p = (p+n+d)%n;} while(a[p] == 0);
30     }
31     return p;
32 }
解析:至于下一個位置為什么是p = (p+n+d)%n.其實很簡單。因為我們是一步步走的,所以只有兩種邊界情況。假設當前位置是p(0=<p<n),
第一種邊界:p + 1 > n - 1,即 p + 1此時應該是到達0位置,但此時p + 1 = n,如果我們取余數,則 (p+1)%T = 0,T = n(T表示這個圓圈的周期大小)。
剛好能符合,又因為T = n,所以(P+T+1)%T還是不變的。
第二種邊界: p - 1 < 0, 即 p - 1此時的值是-1,對于這種情況可以反過來看,它是向后退后1個單位,可以看成向前走T - 1個單位即p -1 等效于 p + T - 1
,我們要等到此時的位置,再去余,(P+T-1)%T。
對于情況一、二。可以歸納為(P+T+d)%T,當為順時針是d取1,否則-1.
posted on 2014-09-23 20:46 swp 閱讀(1837) 評論(0)  編輯 收藏 引用 所屬分類: algorithm
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲欧美日韩成人| 91久久精品国产91性色tv| 亚洲欧美不卡| 中文精品视频一区二区在线观看| 99国产精品国产精品久久| 亚洲激情欧美激情| 老妇喷水一区二区三区| 免费久久精品视频| 欧美国产在线电影| 亚洲精品国产拍免费91在线| 夜夜嗨av一区二区三区免费区| 亚洲色诱最新| 久久国内精品视频| 欧美插天视频在线播放| 欧美日韩国产在线| 国产精品一级| 亚洲国产欧美日韩另类综合| 一本一本久久a久久精品综合麻豆 一本一本久久a久久精品牛牛影视 | 亚洲一区在线观看视频| 欧美一级午夜免费电影| 免费观看久久久4p| 国产精品嫩草影院一区二区| 精品91久久久久| 亚洲私人影院| 免播放器亚洲一区| 亚洲视频免费看| 久久性色av| 国产精品一二三| 日韩亚洲欧美在线观看| 久久www成人_看片免费不卡| 亚洲国产成人精品女人久久久 | 久久精品国产精品亚洲精品| 欧美激情1区2区3区| 中文在线资源观看视频网站免费不卡| 久久福利电影| 国产精品二区在线| 9色精品在线| 欧美成人乱码一区二区三区| 亚洲综合久久久久| 欧美日韩一区视频| 91久久精品国产| 欧美xart系列在线观看| 亚洲欧美久久久| 欧美午夜在线观看| 99这里只有精品| 亚洲激情网站| 男女精品网站| 影音先锋日韩精品| 久久精品一区二区三区不卡| 亚洲一级影院| 国产精品美女久久久免费| 一区二区欧美国产| 亚洲精品久久视频| 欧美福利视频| 亚洲美女在线观看| 亚洲激情在线观看视频免费| 美日韩精品视频| 亚洲高清在线观看| 欧美激情1区2区3区| 猛干欧美女孩| 亚洲精品国产欧美| 亚洲电影免费在线观看| 另类天堂av| 亚洲美女中文字幕| 亚洲精品一区二| 欧美人成在线| 亚洲一区二区在线看| 夜夜嗨av一区二区三区中文字幕 | 欧美另类变人与禽xxxxx| 亚洲精品久久久久久下一站| 亚洲高清一区二区三区| 欧美电影在线免费观看网站| 亚洲免费播放| 99国产一区| 国产欧美日韩激情| 久久只有精品| 欧美片第1页综合| 午夜欧美大尺度福利影院在线看| 亚洲在线国产日韩欧美| 国产香蕉久久精品综合网| 老色批av在线精品| 欧美乱妇高清无乱码| 亚洲影院在线| 久久精品一区| 一个色综合av| 亚洲欧美一级二级三级| 亚洲国产成人久久| 日韩视频不卡中文| 国产真实乱偷精品视频免| 影音先锋亚洲视频| 亚洲免费精彩视频| 在线视频日韩精品| 好看的av在线不卡观看| 亚洲精品国产精品国自产在线| 国产精品视频久久| 欧美国产在线电影| 国产精品嫩草久久久久| 免费成人在线观看视频| 国产精品高潮呻吟| 欧美大色视频| 国产欧美精品va在线观看| 亚洲大片免费看| 国产日本欧美一区二区| 亚洲国产一区二区三区a毛片| 国产精品亚洲精品| 亚洲精品专区| 在线观看精品| 午夜精品国产| 亚洲一二三区视频在线观看| 久久亚洲午夜电影| 欧美中文日韩| 欧美视频在线观看一区| 亚洲国产91色在线| 一区二区三区在线视频免费观看| 中文日韩电影网站| 日韩亚洲欧美在线观看| 久久久水蜜桃| 久久久噜久噜久久综合| 国产精品私人影院| 日韩一区二区免费高清| 亚洲人成久久| 久久婷婷国产综合精品青草| 久久国产一区二区三区| 国产精品福利片| 99精品国产在热久久| 亚洲免费不卡| 欧美国产一区二区在线观看| 欧美成人午夜激情在线| 极品少妇一区二区三区精品视频| 午夜在线a亚洲v天堂网2018| 欧美一级艳片视频免费观看| 国产精品国产三级国产| 一区二区av在线| 亚洲视频成人| 欧美午夜免费影院| 亚洲视频一区二区在线观看| 亚洲香蕉伊综合在人在线视看| 欧美精品在线免费| 日韩午夜在线播放| 亚洲影视在线| 国产亚洲在线观看| 久久爱另类一区二区小说| 久久精品99国产精品日本| 国产无一区二区| 亚洲一区欧美二区| 亚洲午夜激情在线| 欧美高清一区二区| 欧美~级网站不卡| 国产一区视频在线观看免费| 亚洲天堂成人在线视频| 在线一区欧美| 欧美日韩精品免费| 亚洲人成77777在线观看网| 黄色精品网站| 久久人体大胆视频| 亚洲区免费影片| 麻豆国产精品777777在线 | 欧美激情导航| 一本久道久久综合狠狠爱| 亚洲自拍16p| 国产亚洲第一区| 欧美国产三区| 亚洲综合导航| 亚洲国产精品久久久久秋霞蜜臀 | 在线免费观看视频一区| 欧美电影打屁股sp| 亚洲在线视频一区| 亚洲国产精品久久精品怡红院| 日韩午夜视频在线观看| 久久精品91久久香蕉加勒比| 亚洲韩国精品一区| 国产精品久久久久久久久久三级 | 亚洲国产成人一区| 亚洲免费在线电影| 亚洲高清电影| 国产精品腿扒开做爽爽爽挤奶网站| 久久久久久久久岛国免费| 亚洲人成免费| 另类激情亚洲| 亚洲免费综合| 亚洲区免费影片| 国产综合av| 国产精品久久国产精品99gif| 久久精品麻豆| 亚洲午夜一二三区视频| 欧美激情在线免费观看| 欧美伊人久久久久久久久影院 | 午夜久久影院| 99精品免费视频| 亚洲第一免费播放区| 久久成人国产精品| 亚洲一区二区免费在线| 亚洲狼人精品一区二区三区| 国产亚洲综合在线| 国产精品亚洲综合一区在线观看 | 亚洲欧洲日韩在线| 国内精品久久久久久久果冻传媒 | 亚洲日本视频| 美女性感视频久久久| 久久精品91久久久久久再现|