日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

HDU-2332 机器人的舞蹈 递推

發布時間:2025/3/17 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 HDU-2332 机器人的舞蹈 递推 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

題目鏈接:http://acm.hdu.edu.cn/showproblem.php?pid=2232

  直接進入正題,這題要求解的是一個條件極其寬松下的組合題,似乎在看見這題的時候,我們就能遇見這道題的答案會是多么的龐大,所以題中也才會有 % 9937 這樣的提示。對于如此大的一個運算,只走一步的話還好辦,有9種情況,(順時針和逆時針旋轉2次加上相鄰兩個交換位置(交換一對的4次,交換兩對的2次)最后加上原地不動的1次),就1次就夠麻煩的,計算結果表明,兩步共有633種可能, 足以見得后面的情況是多么的復雜。

  各種百度后,我接受了接下來說明的好的方法。保留一定量的信息,通過遞推求得,再在這些信息上求解這個問題。保留的信息為每個機器人在第N次行走后到達各個位置的方案數。提出了這個初步的計劃后,我們應該能想到,這個方法的目的就是使得四個人行走的方格變得更加的干凈,我們先一個一個機器人來計算它的特性。

  假設布局如下(上面依次站著A, B, C, D號機器人):

    "0"?-a??? "1" -b

    "2"?-c?? ?"3" -d

  那么對于剛開始位于 "0" 的 A 機器人來說,此時它位于 "0" 的方案數為 1, 位于其他三個區域的方案數為 0,這是顯而易見的,那么下一時刻呢?是這樣的,此時位于"0"的方案數就變成了 1,位于"1"的方案數為 1,位于"2"的方案數為 1, 位于"3"的方案數為 0。哦,原來是這樣的,就是每次加上跟 "x" 位置相鄰以及本身位置上一步的方案數。

  有: dp[N][0] = dp[N-1][0] + dp[N-1][1] + dp[N-1][2];?? //?原諒我變量名取了dp,它看起來確實比較順眼

     dp[N][1] = dp[N-1][0] + dp[N-1][1] + dp[N-1][3];

     dp[N][2] = dp[N-1][0] + dp[N-1][2] + dp[N-1][3];

     dp[N][3] = dp[N-1][1] + dp[N-1][2] + dp[N-1][3];

  再對初始化位置為 "1", "2", "3" 的機器人進相同的步驟就能夠計算出每個機器人在第N步時,在每一個區域的方案總數。

  做好了上面的準備工作,我們就能夠利用這些信息來進一步解決這個棘手的問題。那么我們還是來看最簡單的只走一步來分析它,由于我們已經知道了走了1步后,各個機器人最后在四個位置的方案數有多少種。

  好,我們開始來數,首先是順時針旋轉,此時 A 到達了 "1", B到達了 "3", C到達了 "0" , D到達了 "2",恩,這個情況出現了,于是我們要去找了,到第 N = 1 步的數據中尋找A在"1"有多少種方案,依次 N =?1時 B在"3",C在"0",D在"2"的方案數。將他們相乘即得到這種終態下的方案數。接下來就是剩下8種狀態對應的方案數了。在N = 1步中這些方案總數都是1種。

  但是新的問題又出來了,難道我要把每一步的所有可能的情況都推算出來嗎,其實這里有個蠻力的法子,就是把所有可能的終態都計算一遍,大不了就是多加幾個零唄。我們可以推算出終態總數為24種,也即4!。

  這樣分析完之后,題目就有可解性了。動手吧。

  代碼如下:

View Code 1 #include <cstdio>
2 #include <cstdlib>
3 #include <cmath>
4 #include <cstring>
5 #include <iostream>
6 #include <algorithm>
7 using namespace std;
8
9 struct Statu
10 {
11 int dp[105][4];
12 }A[4]; // 四個機器人的位置信息
13
14 void deal( void )
15 {
16 for( int i = 0; i < 4; ++i )
17 {
18 for( int j = 1; j <= 100; ++j )
19 {
20 A[i].dp[j][0] = ( A[i].dp[j-1][0] + A[i].dp[j-1][1] + A[i].dp[j-1][2] ) % 9937;
21 A[i].dp[j][1] = ( A[i].dp[j-1][0] + A[i].dp[j-1][1] + A[i].dp[j-1][3] ) % 9937;
22 A[i].dp[j][2] = ( A[i].dp[j-1][0] + A[i].dp[j-1][2] + A[i].dp[j-1][3] ) % 9937;
23 A[i].dp[j][3] = ( A[i].dp[j-1][1] + A[i].dp[j-1][2] + A[i].dp[j-1][3] ) % 9937;
24 }
25 }
26 }
27
28 int slove( int N )
29 {
30 int sum = 0, t, base[4] = { 0, 1, 2, 3 };
31 for( int i = 0; i < 24; ++i )
32 {
33 t = ( A[0].dp[N][ base[0] ] % 9937 ) * ( A[1].dp[N][ base[1] ] % 9937 );
34 t %= 9937;
35 t *= ( A[2].dp[N][ base[2] ] % 9937 );
36 t %= 9937;
37 t *= ( A[3].dp[N][ base[3] ] % 9937 );
38 sum = ( sum + t ) % 9937;
39 next_permutation( base, base + 4 );
40 }
41 return sum;
42 }
43
44 int main()
45 {
46 for( int i = 0; i < 4; ++i )
47 {
48 A[i].dp[0][i] = 1;
49 }
50
51 deal();
52
53 int N;
54 while( scanf( "%d", &N ) != EOF )
55 {
56 printf( "%d\n", slove( N ) );
57 }
58
59 return 0;
60 }

總結

以上是生活随笔為你收集整理的HDU-2332 机器人的舞蹈 递推的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 国产av无码专区亚洲av麻豆 | 三年中文在线观看免费观看 | 国产成人免费在线观看 | 欧美午夜理伦三级在线观看 | 日韩乱码人妻无码系列中文字幕 | 亚洲一区中文字幕在线 | 暖暖日本在线 | 欧美婷婷六月丁香综合色 | 操碰视频| 456亚洲影视 | 波多野结衣av电影 | 日本老熟妇乱 | 亚洲在线看| a级黄色片免费看 | 国内自拍一区 | 91免费观看视频在线 | 色噜噜一区二区三区 | 日韩视频一区二区三区四区 | 麻豆网站在线看 | 神马久久精品 | 精品96久久久久久中文字幕无 | 亚洲天堂第一 | 18无套直看片红桃 | 欧美1区2区3区 | 日本黄色录像 | 中国二级毛片 | 舐丝袜脚视频丨vk | 精品久久久无码中文字幕边打电话 | 成人精品免费网站 | 国产精品人人做人人爽人人添 | 少妇又紧又色又爽又刺激 | 国产乱码精品一区二三区蜜臂 | 亚洲一区二区视频在线 | 久久久久久中文字幕 | 777精品| 伊人色网 | 永久免费未满 | 95久久| 美国福利片 | 久久久久亚洲av无码网站 | 三上悠亚 在线观看 | 日韩中文字幕一区二区 | 无码人妻精品一区二区蜜桃网站 | 日韩大胆视频 | 91官网在线观看 | 伊人色图| 自拍偷拍p | 无码精品一区二区三区在线 | 中国毛片在线观看 | 日本高清不卡二区 | 想要视频在线 | av视 | 精品国产九九九 | 粗大挺进潘金莲身体在线播放 | 欧美作爱视频 | 成人动漫一区二区 | 天天看a | 日本成人黄色 | 国模私拍一区二区 | 欧美一级α片 | 美女三级视频 | 97影音| 亚洲欧美日韩在线播放 | 国产精品一区二区av白丝下载 | 我不卡一区二区 | 欧美激情第1页 | www.色午夜| 91porny首页入口| 欧美手机看片 | 亚天堂 | 久久国内免费视频 | 欧美一区二区三区成人片在线 | 三级福利片 | 亚洲精品国产精品乱码不99 | 国产第2页| 日韩精品一区二区三区久久 | 久久6视频 | 日本二区在线观看 | 又大又粗又爽18禁免费看 | 麻豆视频在线观看免费 | 蜜桃av鲁一鲁一鲁一鲁俄罗斯的 | 欧美久久一区二区三区 | www日本视频 | 成人在线播放视频 | 国产真实伦对白全集 | 国产传媒一区 | 国产伦精品一区二区三区高清版禁 | 日韩视频精品在线 | 欧亚av | 欧美日韩中文视频 | 一区二区精品在线观看 | 亚洲手机在线 | 色婷婷六月天 | 亚洲色图久久 | 美日韩一区 | 风间由美一二三区av片 | 久久精品6 | 久伊人 | 成人在线观看一区二区 |