Codeforces Round #191 (Div. 2) E题
状态压缩DP,算sum,本来是枚举的,结果TLE了。。
1 #include <iostream> 2 #include <cstring> 3 #include <cstdio> 4 #include <queue> 5 #include <cstdlib> 6 using namespace std; 7 #define MOD 1000000007 8 int p[10001]; 9 int hash[1<<24]; 10 int sum[1<<24]; 11 int k[3]; 12 int lowbit(int t) 13 { 14 return t&(-t); 15 } 16 int main() 17 { 18 int n,m,i,j; 19 scanf("%d",&n); 20 for(i = 0; i < n; i ++) 21 { 22 scanf("%d",&p[i]); 23 } 24 scanf("%d",&m); 25 for(i = 1; i <= m; i ++) 26 { 27 scanf("%d",&k[i]); 28 } 29 if(m == 1) k[2] = k[1]; 30 hash[0] = 1; 31 for(i = 0;i < n;i ++) 32 sum[1<<i] = p[i]; 33 for(i = 1; i < (1<<n); i ++) 34 { 35 sum[i] = sum[i-lowbit(i)] + sum[lowbit(i)]; 36 if(sum[i] == k[1]||sum[i] == k[2]) 37 continue; 38 for(j = i; j > 0; j -= lowbit(j)) 39 { 40 hash[i] += hash[i-lowbit(j)]; 41 if(hash[i] > MOD) 42 hash[i] -= MOD; 43 } 44 } 45 printf("%d\n",hash[(1<<n)-1]); 46 return 0; 47 }
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 解答了困扰我五年的技术问题
· 为什么说在企业级应用开发中,后端往往是效率杀手?
· 用 C# 插值字符串处理器写一个 sscanf
· Java 中堆内存和栈内存上的数据分布和特点
· 开发中对象命名的一点思考
· 为什么说在企业级应用开发中,后端往往是效率杀手?
· DeepSeek 解答了困扰我五年的技术问题。时代确实变了!
· 本地部署DeepSeek后,没有好看的交互界面怎么行!
· 趁着过年的时候手搓了一个低代码框架
· 推荐一个DeepSeek 大模型的免费 API 项目!兼容OpenAI接口!
2012-07-27 HDU 1712 ACboy needs your help(二维DP)
2012-07-27 URAL 1018. Binary Apple Tree(树形DP)
2012-07-27 POJ 2299 Ultra-QuickSort(树状数组)
2012-07-27 HDU 1100. Final Standings(快排)