原本有n個數字,第1,2個相加,第2,3個相加……第n-1,n個相加,由此得出乙個長度為n-1的新序列,然後不停重複,最後得出乙個t,現在給出一開始的n和t求符合的序列(字典序最小)(多組資料,0 0結束)4 16
3 90 03 1 2 4
1 3 2開始排列: 3 1 2 4
第一次操作:3+1=4 1+2=3 2+4=6
得到: 4 3 6
第二次得到: 7 9
最後就是: 16資料保證有解。請注意加粗字型!
對於30%的資料,保證該組裡的每個n都不超過10。
對於100%的資料,保證有每個n不超過20,且每組資料的個數不超過10。我們可以由題意得出下圖,圖中代表的是數字相加的次數,可以看出,這是乙個楊輝三角,我們可以先求出楊輝三角,再dfs列舉每乙個數1:判斷當前總值是否大於t,若大於,退出
2:因為楊輝三角有對稱的特性,所以判斷a[i]是否大於a[n-i+1],若不大於,退出
3:將剩下的數和楊輝三角剩下可乘的的數排列,將最大的乘最大的,最小的成最小的,得出剩下的數最大的結果,若當前總值+最大的結果
;//判斷是否越界
if(y>=t)
return
;//判斷是否大於t
int w=
0,big=
0,small=0;
for(
register
int i=
1;i<=n;i++
)//沒選過的數if(
!p[i]
)sort
(h+1
,h+1
+w);
//排for
(register
int i=
1,j=w;i<=w;i++
,j--)if
(y+big
return
;//剪枝
if(y+small>t)
return
;for
(register
int i=
1;i<=n;i++)if
(!p[i])}
intmain()
return0;
}
簡單遊戲框架
引用 最近一段時間不是很忙,就寫了乙個自己的遊戲伺服器框架雛形,很多地方還不夠完善,但是基本上也算是能夠跑起來了。我先從上層結構說起,一直到實現細節吧,想起什麼就寫什麼。第一部分 伺服器邏輯 伺服器這邊簡單的分為三個部分,客戶端的連線首先到達閘道器伺服器,閘道器這裡有個執行緒用來監聽來自與客戶端的連...
簡單遊戲 easygame
題目描述 一天,小r準備找小h去游泳,當他找到小h時,發現小h正在痛苦地寫著一列數,1,2,3,n,於是就問小h痛苦的原因,小h告訴他,現在他要算1 n這些數裡面,1出現的次數是多少,如n 11的時候,有1,10,11共出現4次1,現在給出n,你能快速給出答案麼?輸入一行,乙個整數n 輸出乙個整數,...
簡單遊戲框架
引用 最近一段時間不是很忙,就寫了乙個自己的遊戲伺服器框架雛形,很多地方還不夠完善,但是基本上也算是能夠跑起來了。我先從上層結構說起,一直到實現細節吧,想起什麼就寫什麼。第一部分 伺服器邏輯 伺服器這邊簡單的分為三個部分,客戶端的連線首先到達閘道器伺服器,閘道器這裡有個執行緒用來監聽來自與客戶端的連...