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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

洛谷 P2722 总分题解

發(fā)布時(shí)間:2025/3/15 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 洛谷 P2722 总分题解 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

題目描述

我們可以從幾個(gè)種類中選取競賽的題目,這里的一個(gè)"種類"是指一個(gè)競賽題目的集合,解決集合中的題目需要相同多的時(shí)間并且能得到相同的分?jǐn)?shù)。你的任務(wù)是寫一個(gè)程序來告訴USACO的職員,應(yīng)該從每一個(gè)種類中選取多少題目,使得解決題目的總耗時(shí)在競賽規(guī)定的時(shí)間里并且總分最大。輸入包括競賽的時(shí)間,M(1 <= M <= 10,000)(不要擔(dān)心,你要到了訓(xùn)練營中才會(huì)有長時(shí)間的比賽)和N,"種類"的數(shù)目1 <= N <= 10,000。后面的每一行將包括兩個(gè)整數(shù)來描述一個(gè)"種類":

第一個(gè)整數(shù)說明解決這種題目能得的分?jǐn)?shù)(1 <= points <= 10000),第二整數(shù)說明解決這種題目所需的時(shí)間(1 <= minutes <= 10000)。

你的程序應(yīng)該確定我們應(yīng)該從每個(gè)"種類"中選多少道題目使得能在競賽的時(shí)間中得到最大的分?jǐn)?shù)。

來自任意的"種類"的題目數(shù)目可能是任何非負(fù)數(shù)(0或更多)。

計(jì)算可能得到的最大分?jǐn)?shù)。

輸入格式

第 1 行: M, N--競賽的時(shí)間和題目"種類"的數(shù)目。

第 2-N+1 行: 兩個(gè)整數(shù):每個(gè)"種類"題目的分?jǐn)?shù)和耗時(shí)。

輸出格式

單獨(dú)的一行包括那個(gè)在給定的限制里可能得到的最大的分?jǐn)?shù)。

輸入輸出樣例

輸入 #1復(fù)制 300 4 100 60 250 120 120 100 35 20 輸出 #1復(fù)制 605

說明/提示

題目翻譯來自NOCOW。

USACO Training Section 3.1


?

題解

這是道完全背包模板題。把競賽時(shí)間看做背包容量,每個(gè)種類的題目看做物品,每個(gè)物品可以被選擇,也可以不選。

1 #include <iostream> 2 #include <stdio.h> 3 #include <math.h> 4 #include <algorithm> 5 #include <string.h> 6 7 using namespace std; 8 9 const int MAXN = 1e5 + 5; 10 int m, n, s[MAXN], t[MAXN], f[MAXN]; 11 12 int main() 13 { 14 cin >> m >> n; 15 for ( int i = 1; i <= n; i++ ) 16 { 17 cin >> s[i] >> t[i]; 18 } 19 for ( int i = 1; i <= n; i++ ) 20 { 21 for ( int j = t[i]; j <= m; j++ ) 22 { 23 f[j] = max( f[j], f[j - t[i]] + s[i] ); 24 } 25 } 26 cout << f[m] << endl; 27 return(0); 28 }

?

轉(zhuǎn)載于:https://www.cnblogs.com/zealsoft/p/11440385.html

總結(jié)

以上是生活随笔為你收集整理的洛谷 P2722 总分题解的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。