摘要: 【算法】快速幂运算 【题解】ans=(m*10^k+x)%n,用快速幂计算10^k即可,复杂度为O(log k)。 #include<cstdio> long long n,m,k,x,ans; long long quickpow(long long x,long long n,long long 阅读全文
posted @ 2016-08-13 21:40 ONION_CYC 阅读(239) 评论(0) 推荐(1) 编辑
摘要: 【算法】动态规划+后缀表达式 【题解】 先把算式转为后缀表达式后进行DP 令f[s][0]表示使表达式答案为0的方案数 f[s][1]表示使表达式答案为1的方案数 (加法) f[a+b][1]=f[a][0]*f[b][1]+f[a][1]*f[b][0]+f[a][1]*f[b][1] f[a+b 阅读全文
posted @ 2016-08-13 20:23 ONION_CYC 阅读(1023) 评论(1) 推荐(1) 编辑
摘要: 【算法】DP||贪心 【题解】 (1)动态规划: 令f[i][0..1]为两种条件下前i株花的最大保留数量,状态转移方程: f[i][0]=max(f[j][1]+1) (j=i-1...1)(h[i]>h[j]) f[i][1]=max(f[j][0]+1) (j=i-1...1)(h[i]<h[ 阅读全文
posted @ 2016-08-13 09:13 ONION_CYC 阅读(629) 评论(0) 推荐(0) 编辑
摘要: 【算法】找规律(听说还有写RMQ的www) 【题解】ans+=(a[i]-a[i-1]) (i=1...n)(a[i]>a[i-1]) 后面比前面大k,说明要新叠加k个区间来达到所需高度。(看似很复杂的区间覆盖问题,从前往后扫描就很容易得到贪心策略) #include<cstdio> int n,a 阅读全文
posted @ 2016-08-13 07:53 ONION_CYC 阅读(228) 评论(0) 推荐(0) 编辑