日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

codevs 1085 数字游戏 dp或者暴搜

發布時間:2025/5/22 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 codevs 1085 数字游戏 dp或者暴搜 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1085 數字游戲

?

2003年NOIP全國聯賽普及組

?時間限制: 1 s ?空間限制: 128000 KB 題目描述?Description

丁丁最近沉迷于一個數字游戲之中。這個游戲看似簡單,但丁丁在研究了許多天之后卻發覺原來在簡單的規則下想要贏得這個游戲并不那么容易。游戲是這樣的,在你面前有一圈整數(一共n個),你要按順序將其分為m個部分,各部分內的數字相加,相加所得的m個結果對10取模后再相乘,最終得到一個數k。游戲的要求是使你所得的k最大或者最小。

例如,對于下面這圈數字(n=4,m=2):

? ? ? ? ? ? ? ? ? ? ? ? ? ? ????? 2

?????????????????? 4?????????????????????????? -1

???????????????????????????????? 3

當要求最小值時,((2-1) mod 10)×((4+3) mod 10)=1×7=7,要求最大值時,為((2+4+3) mod 10)×(-1 mod 10)=9×9=81。特別值得注意的是,無論是負數還是正數,對10取模的結果均為非負值。

丁丁請你編寫程序幫他贏得這個游戲。

輸入描述?Input Description

輸入文件第一行有兩個整數,n(1≤n≤50)和m(1≤m≤9)。以下n行每行有個整數,其絕對值不大于104,按順序給出圈中的數字,首尾相接。

輸出描述?Output Description

輸出文件有兩行,各包含一個非負整數。第一行是你程序得到的最小值,第二行是最大值。

樣例輸入?Sample Input

4 2

4

3

-1

2

樣例輸出?Sample Output

7

81

數據范圍及提示?Data Size & Hint

en

思路:

dp:dp[i][j]=sigma(dp[i-j][t]) ?1<=t<=i-j;

#include<bits/stdc++.h> using namespace std; #define ll __int64 #define mod 1000000007 #define pi (4*atan(1.0)) const int N=1e3+10,M=1e6+10,inf=1e9+10; int dp[N][N],n,m; int dfs(int x,int y,int pre) {if(x<pre)return 0;if(y==1)return 1;int sum=0;for(int i=max(1,pre);i<=x;i++)sum+=dfs(x-i,y-1,i);return sum; } int main() {int x,y,z,i,t;scanf("%d%d",&x,&y);printf("%d\n",dfs(x,y,0));return 0; } 暴力代碼

?

轉載于:https://www.cnblogs.com/jhz033/p/5614867.html

總結

以上是生活随笔為你收集整理的codevs 1085 数字游戏 dp或者暴搜的全部內容,希望文章能夠幫你解決所遇到的問題。

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