“玲珑杯”ACM比赛 Round #18
2017-07-15 19:28
513 查看
赛后补题0 0 原谅我,比赛的时候悲催的挂0了。
垃圾!
玲珑杯 1146 - 图论你先敲完模板
http://www.ifrog.cc/acm/problem/1146
DP题,dp[i]表示到达第i个休息战的最小花费,那么dp[i]= min(dp[i],dp[j]+cost)。之后列出方程即可。
A题 1143 - 计算几何你瞎暴力
我真是瞎,我没注意x,y,z的范围只是0~10,我以为 是1~5e4呢,我还在想,这个题怎么那么多人都会。我都怀疑人生了。x,,y,z确定后,那么给的n很大,那么只有一种可能,同一个点上有多个重复教室。那么我们暴力吧
垃圾!
玲珑杯 1146 - 图论你先敲完模板
http://www.ifrog.cc/acm/problem/1146
DP题,dp[i]表示到达第i个休息战的最小花费,那么dp[i]= min(dp[i],dp[j]+cost)。之后列出方程即可。
#include <bits/stdc++.h> #define maxs 202020 #define mme(i,j) memset(i,j,sizeof(i)) using namespace std; long long poww[45]; long long dp[maxs]; int x[maxs]; void init(){ mme(poww,0); poww[0]=1; for(int i=1;i<=40;i++) poww[i]=poww[i-1]*2; } int main(){ init(); int n,t,a; scanf("%d",&t); while(t--){ scanf("%d%d",&n,&a); for(int i=1;i<=n;i++) scanf("%d",&x[i]); dp[1]=0; for(int i=2;i<=n;i++) { dp[i]=LONG_LONG_MAX; long long len=0; for(int j=i-1;j>=1;j--){ len=len+x[j+1]-x[j]; if(len>40) break; dp[i]=min(dp[i],dp[j]+poww[len]+a); } } cout<<dp <<endl; } return 0; }
A题 1143 - 计算几何你瞎暴力
我真是瞎,我没注意x,y,z的范围只是0~10,我以为 是1~5e4呢,我还在想,这个题怎么那么多人都会。我都怀疑人生了。x,,y,z确定后,那么给的n很大,那么只有一种可能,同一个点上有多个重复教室。那么我们暴力吧
#include <bits/stdc++.h> #define maxs 220200 #define mme(i,j) memset(i,j,sizeof(i)) using namespace std; long long vis[15][15][15]; long long ans[1505]; int main(){ int t; scanf("%d",&t); while(t--){ int n,q; scanf("%d%d",&n,&q); int x,y,z; mme(vis,0); mme(ans,0); for(int i=0;i<n;i++) { scanf("%d%d%d",&x,&y,&z); vis[x][y][z]++; } for(int i=0;i<=10;i++) { for(int j=0;j<=10;j++) { for(int k=0;k<=10;k++) { for(int x=0;x<=10;x++) { for(int y=0;y<=10;y++) { for(int z=0;z<=10;z++) { int dis = abs(i-x)+abs(j-y)+abs(k-z); if(i==x && j == y && k == z) { if(vis[x][y][z]>=1) ans[dis] = ans[dis]+ ( ( vis[x][y][z] * ( vis[x][y][z] - 1 ) ) / 2 ); } else if(vis[x][y][z]*vis[i][j][k]>0) { ans[dis]+=vis[i][j][k]*vis[x][y][z]; } } } } } } } int r; for(int i=1;i<31;i++) ans[i]=ans[i-1]+ans[i]/2; while(q--){ scanf("%d",&r); if(r>30) cout<<ans[30]<<endl; else cout<<ans[r]<<endl; } } return 0; }
相关文章推荐
- “玲珑杯”ACM比赛 Round #18 C -- 图论你先敲完模板(dp)
- “玲珑杯”ACM比赛 Round #18 A -- 计算几何你瞎暴力
- “玲珑杯”ACM比赛 Round #18 B -- 数论你还会快速幂【规律】
- “玲珑杯”ACM比赛 Round #18 C -- 图论你先敲完模板【Dp】
- “玲珑杯”ACM比赛 Round #18 A -- 计算几何你瞎暴力
- “玲珑杯”ACM比赛 Round #18 A -- 计算几何你瞎暴力(计算几何)
- 玲珑杯”ACM比赛 Round #18 C -- 图论你先敲完模板
- “玲珑杯”ACM比赛 Round #18 A -- 图论你先敲完模板(DP+思路)
- 玲珑杯 1143 - 计算几何你瞎暴力(暴力+YY)——“玲珑杯”ACM比赛 Round #18
- “玲珑杯”ACM比赛 Round #18 A -- 计算几何你瞎暴力
- “玲珑杯”ACM比赛 Round #18 A(穷举)
- “玲珑杯”ACM比赛 Round #18 C(dp)
- “玲珑杯”ACM比赛 Round #18--最后你还是AK了(搜索+思维)
- “玲珑杯”ACM比赛 Round #18 C -- 图论你先敲完模板
- “玲珑杯”ACM比赛 Round #18 A 前缀预处理 D dp
- “玲珑杯”ACM比赛 Round #18---图论你先敲完模板(DP+思维)
- “玲珑杯”ACM比赛 Round #18 ABC题解
- “玲珑杯”ACM比赛 Round #18 【4/5】 [待补-splay维护256位二进制标记]
- “玲珑杯”ACM比赛 Round #18
- “玲珑杯”ACM比赛 Round #4 E题