在遙遠的東方,有一家糖果專賣店。
這家糖果店將會在每天**一些糖果,它每天都會生產出m個糖果,第i天的第j個糖果**為c[i][j]元。
現在的你想要在接下來的n天去糖果店進行選購,你每天可以買多個糖果,也可以選擇不買糖果,但是最多買m個。(因為最多隻生產m個)買來糖果以後,你可以選擇吃掉糖果或者留著之後再吃。糖果不會過期,你需要保證這n天中每天你都能吃到至少乙個糖果。
這家店的老闆看你經常去光顧這家店,感到非常生氣。(因為他不能好好睡覺了)於是他會額外的要求你支付點錢。具體來說,你在某一天購買了 k 個糖果,那麼你在這一天需要額外支付 k2 的費用。
那麼問題來了,你最少需要多少錢才能達成自己的目的呢?
第一行兩個正整數n和m,分別表示天數以及糖果店每天生產的糖果數量。接下來n行(第2行到第n+1行),每行m個正整數,第x+1行的第y個正整數表示第x天的第y個糖果的費用。
輸出只有乙個正整數,表示你需要支付的最小費用。示例1
複製
3 2複製1 1100 100
10000 10000
107示例2
複製
5 5複製1 2 3 4 5
2 3 4 5 1
3 4 5 1 2
4 5 1 2 3
5 1 2 3 4
10
對於100%的資料,1 ≤ n, m ≤ 300 , 所有輸入的數均 ≤ 106。
#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define inf 0x3f3f3f3f
typedef long long ll;
using namespace std;
int a[550][550];
ll sum[550][550],f[550][550],n,m;
int main()
f[0][0]=0;
for(int i=1;i<=n;i++)
for(int j=i;j<=n;j++)
for(int k=0;k<=j&&k<=m;k++)
if(f[i-1][j-k]!=0x3f3f3f3f)
f[i][j]=min(f[i][j],f[i-1][j-k]+sum[i][k]+k*k);
cout《在alice和bob面前的是兩個骰子,上面分別寫了六個數字。
alice和bob輪流丟擲骰子,alice選擇第乙個骰子,而bob選擇第二個,如果誰投擲出的數更大,誰就可以獲勝。
現在給定這兩個骰子上的6個數字,你需要回答是alice獲勝機率更大,還是bob獲勝機率更大。(請注意獲勝機率相同的情況)
第一行乙個數t,表示資料個數。
接下來的每一組資料一共有2行,每一行有6個正整數,第一行是第乙個骰子上的6個數,第二行是第二個骰子上的6個數。
如果alice獲勝機率更大,你需要輸出alice;示例1如果bob獲勝機率更大,你需要輸出bob;
如果獲勝機率一樣大,你需要輸出tie。
複製
2複製3 3 3 3 3 3
1 1 4 4 4 4
1 2 3 4 5 6
6 5 4 3 2 1
bobtie
第乙個資料中,alice有三分之一機率獲勝,bob有三分之二機率獲勝;對於30%的資料,1 ≤ t ≤ 10。第二個資料中,alice和bob的骰子完全一致,所以獲勝機率一樣大。
對於60%的資料,1 ≤ t ≤ 1000。
對於100%的資料,1 ≤ t ≤ 105,所有輸入的數均 ≤ 107。
#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define inf 0x3f3f3f3ftypedef long long ll;
using namespace std;
int a[7],b[7],n,w,l;
int main()
}if(w>l)
cout<<"alice"《在剛剛過去的雙11,對於別人來說是乙個購物的節日,然而對於cjj來說,確是乙個單身狗的光棍節,所以他只能乙個人默默的刷題。
現在,cjj學長遇到了乙個數學問題,如果乙個數的三次方的後兩位是11,那麼他將其稱之為「單身數」,他知道了第乙個「單身數」是71,cjj學長想知道第n個「單身數」是多少。
輸入乙個正整數t(t<=100),表示有t組資料,每組資料報括乙個整數n(1<=n<=1000000)
輸出第n個「單身數」。示例1
複製
1複製1
71
#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define inf 0x3f3f3f3ftypedef long long ll;
using namespace std;
int n,t;
int main()
return 0;
}
牛客網 有趣的數字
程式設計題 有趣的數字 時間限制 1秒空間限制 32768k 小q今天在上廁所時想到了這個問題 有n個數,兩兩組成二元組,差最小的有多少對呢?差最大呢?輸入描述 輸入包含多組測試資料。對於每組測試資料 n 本組測試資料有n個數 a1,a2 an 需要計算的資料 保證 1 n 100000,0 ai ...
牛客練習賽7 骰子的遊戲(水)
在alice和bob面前的是兩個骰子,上面分別寫了六個數字。alice和bob輪流丟擲骰子,alice選擇第乙個骰子,而bob選擇第二個,如果誰投擲出的數更大,誰就可以獲勝。現在給定這兩個骰子上的6個數字,你需要回答是alice獲勝機率更大,還是bob獲勝機率更大。請注意獲勝機率相同的情況 第一行乙...
牛客網答題筆記 有趣的數字
小q今天在上廁所時想到了這個問題 有n個數,兩兩組成二元組,差最小的有多少對呢?差最大呢?輸入描述 輸入包含多組測試資料。對於每組測試資料 n 本組測試資料有n個數 a1,a2.an 需要計算的資料 保證 1 n 100000,0 ai int max.輸出描述 對於每組資料,輸出兩個數,第乙個數表...