HNOI2017大佬
阿新 • • 發佈:2018-01-27
自信 tor ont 任務 typename typedef 就是 mat ems
大佬
- 賊難的一道題
- 雖然算法都不難,但組合起來就是想不到
- 首先,最簡單的一步,對所有大佬,嘲諷你減的自信值和你做水題回復自信值都是不變的,寫個\(dp\),設\(dp[i][j]\)表示第\(i\)天自信值為\(j\)可以有多少天不刷題,這便是你最多可以用的天數
- 現在你的任務便是在這麽多天懟死大佬
- 考慮到與大佬對懟最多兩次,剩下的天數就還嘴,\(bfs\)暴力搜索出所有你可以造成的傷害和所花的時間,自己寫\(Hash\)判重,去重後的方案不會很多
- 現在處理每個大佬看能不能恰好懟死他
- 把所有搜索出的方案按傷害從大到小排序
- 首先如果天數比生命還多就直接可以
- 枚舉使用一次技能可不可以
枚舉使用兩次技能可不可以,好像直接雙重循環暴枚就行了,我寫的東西好像並沒有降低復雜度。。。。
// luogu-judger-enable-o2 #include<bits/stdc++.h> using namespace std; typedef int sign; typedef long long ll; #define For(i,a,b) for(register sign i=(sign)a;i<=(sign)b;++i) #define Fordown(i,a,b) for(register sign i=(sign)a;i>=(sign)b;--i) const int N=100+5; bool cmax(sign &a,sign b){return
HNOI2017大佬