題意:求2^m -1 =>10^k 已知m 求最大的k
思路:賽上沒有多想就開始找規律。。然後浪費了一些時間還wa了,最後改過了。
後來看題解 發現就是個簡單的公式,一行**嗚嗚嗚嗚
10^k<=2^m -1
log(10)10^k<= log(10) 2^m -1
—>k<=mlog2/log10
#include
#include
#include
#include
#include
#include
using
namespace
std;
int main()
}
題意:給n個由小寫字母組成的字串,可以給每個字元賦值0~25,然後把這些字母轉換成26進製的數,求n個字串加起來的最大值。
思路:賽上的想法對每個字母進行權值計算。開乙個陣列w[26][1e5],記錄每乙個字母在字串的第i位(從後往前數)出現的次數,如果查過26就進一位。然後排序得到每個數應該給多大的權值。
但是這個排序寫起來很複雜。。一開始是各種t然後是wa。。。最後發現前導0沒有判斷。。。
我賽上沒有寫,補題++;
題意:題意很難描述。。。。理了半天才理清楚意思,發現是個圖論。
思路:在a中找迴圈節(也就是圖論裡的環),b中找迴圈節,a中迴圈節大小如果是b中某個迴圈節大小的倍數,那麼b中的這個迴圈節就可以巢狀到a中。
賽上:可以說肥腸的遺憾了,,,也可能是狀態不好什麼的,其他的部分都想對了,但是不是倍數。。而以為是兩個迴圈節必須數量相同。。。啊zz如我
賽後改了乙個小地方就a了
#include
#include
#include
#include
#include
#include
using
namespace
std;
const
long
long mod=1e9+7;
int a[100005],b[100005];
bool used[100005];
int num[100005];
vector
g[100005];
int dfs(int x)
}return tot;
}int main()
for(int i=0;iif(used[i]==0)
}// for(int i=1;i<=4;i++) coutg[i].push_back(u);
}
memset(used,0,sizeof used);
long
long ans=1;
for(int i=0;iif(used[i]==0)
}ans=(ans * y) % mod;}}
printf("case #%d: %lld\n",++cas,ans);
}}
題意見上
思路:全場題之一,簡單找規律。
#include
#include
#include
#include
#include
using
namespace
std;
int main()
if(k<=n-1+n-2)
cout
<}
}}
HDU 2017 多校訓練賽1 補題
acm模版 比賽不是特別順利,第一次打多校,感覺還是英語問題很大,雖然編碼水平也很渣 比賽時做了四道,有些心痛了。賽後補補題吧,先將賽中的四道題寫一下,佔佔流量,然後慢慢新增補的題吧!水題,就是乙個公式。include include using namespace std int m int ma...
HDU 2017 多校訓練賽5 補題
acm模版 我發現,多校是越來越不能打了 太 bu g bug 了,一場比一場難,這場又是只 a a 了三道題,啥也做不了了,一場看熱鬧的娛樂局。圖論 實際上就是乙個找找規律的構造題。dp 很容易看出來是 dp role presentation style position relative dp...
HDU 2017 多校訓練賽9 補題
acm模版 這場比賽運氣挺好,水了四道題,儘管很多人做了五道,但是我挺知足了 貌似第六題是最短路,沒有好好看它,有些可惜了,明天抽空補補吧 lca 主席樹 很考驗細心與耐心的一道題。dfs 正反向搜尋搞搞。貪心 利用 ma p map 進行離散優化,然後貪心策略即可。dp 乙個正規表示式的 dp d...