CEOI2015 Day2 世界冰球錦標賽

2021-10-02 05:40:38 字數 1241 閱讀 4326

題目描述

譯自 ceoi2015 day2 t1「ice hockey world championship」

今年的世界冰球錦標賽在捷克舉行。bobek 已經抵達布拉格,他不是任何團隊的粉絲,也沒有時間觀念。他只是單純的想去看幾場比賽。如果他有足夠的錢,他會去看所有的比賽。不幸的是,他的財產十分有限,他決定把所有財產都用來買門票。

給出 bobek 的預算和每場比賽的票價,試求:如果總票價不超過預算,他有多少種觀賽方案。如果存在以其中一種方案**某場比賽而另一種方案不**,則認為這兩種方案不同。

輸入格式

第一行,兩個正整數n,m(1≤n≤40,1≤m≤10 e18 ),表示比賽的個數和 bobek 那家徒四壁的財產。

輸入輸出樣例

輸入 #1複製

5 1000

100 1500 500 500 1000

輸出 #1複製

8說明/提示

樣例解釋

八種方案分別是:

一場都不看,溜了溜了

** 100 的比賽

第一場** 500 的比賽

第二場** 500 的比賽

** 100100 的比賽和第一場** 500 的比賽

** 100100 的比賽和第二場** 500 的比賽

兩場** 500 的比賽

** 1000 的比賽

很明顯的爆搜每一種情況,但是複雜度為 2^40 過不了此題。也可以做揹包,但是**太大,複雜度不行。

所以我們要雙向搜尋,也就是meet in the middle ,答案肯定由左邊和右邊的物品組成,我們可以先求出左邊的,然後對於右邊的,找剩下的可以有多少種情況即可。

ac**:

#pragma gcc optimize("-ofast","-funroll-all-loops")

#include

#define int long long

using namespace std;

int res,n,m,a[50]

;vector<

int> v[2]

;void

dfs(

int l,

int r,

int s,

int k)

dfs(l+

1,r,s+a[l]

,k);

dfs(l+

1,r,s,k);}

signed

main()

CEOI2015 Day2 核能國度 題解

給出 w times h 的矩形,n 個修改,每個修改有位置及引數 a,b 表示對其周邊距離它切比雪夫距離為 d 的格仔的權值增加 max 0,a b times d 最後 q 組詢問,每次求乙個子矩陣的和。我不會告訴你我做這道題做了半個月並且實現還借助了題解。雖然有一周在期末考試。每次暴力修改其影...

單一世界 2 報文介面

報文在所有的cs架構中,是很重要的基礎。因此,在所有工作開展之前,有必要先對報文進行分析。作為乙個通用的伺服器,那麼他的報文格式必須受標準 約束,在靈活性跟可擴充套件性方便是很重要的考慮因素,而對具體的業務規則反而不能深入的介入。魔獸世界的報文具有他本身私有的業務規則,單一世界是為網遊戲 設計的,所...

華為將在2015世界移動通訊大會分享其行業願景

邁向全聯接世界的開放之路 華為常務董事兼產品與解決方案總裁丁耘 微博 說到 電信業需要快速構建乙個開放數字生態圈。華為將致力於同客戶和行業夥伴積極合作,打造乙個更加美好的全聯接世界。在2015世界移動通訊大會上,華為還將圍繞 擁抱開放數字生態圈 使能 ict 轉型 和 移動超寬頻演進 等主題分享華為...