跳至内容
CVBB ACM Team
用户工具
注册
登录
站点工具
搜索
工具
显示页面
修订记录
Copy this page
导出 PDF
反向链接
最近更改
媒体管理器
网站地图
注册
登录
>
最近更改
媒体管理器
网站地图
您在这里:
front_page
»
2020-2021
»
teams
»
wangzai_milk
»
weekly
»
poj_1191
2020-2021:teams:wangzai_milk:weekly:poj_1191
本页面只读。您可以查看源文件,但不能更改它。如果您觉得这是系统错误,请联系管理员。
[[http://poj.org/problem?id=1191|POJ 1191]] <code cpp> #include<iostream> #include<cstdio> #include<cstring> #include<cmath> #include<cstdlib> using namespace std; int n,a[9][9]; int f[9][9][9][9][16],pre[9][9]; int dp(int x1,int y1,int x2,int y2,int k) { if(k==0) f[x1][y1][x2][y2][k]=(pre[x2][y2]-pre[x2][y1-1]-pre[x1-1][y2]+pre[x1-1][y1-1])*(pre[x2][y2]-pre[x2][y1-1]-pre[x1-1][y2]+pre[x1-1][y1-1]); if(x1==x2&&y1==y2)f[x1][y1][x2][y2][k]=a[x1][y1]*a[x1][y1]; if(f[x1][y1][x2][y2][k]<0x3f3f3f3f)return f[x1][y1][x2][y2][k]; for(int i=x1;i<x2;i++) { f[x1][y1][x2][y2][k]=min(f[x1][y1][x2][y2][k],dp(x1,y1,i,y2,0)+dp(i+1,y1,x2,y2,k-1)); f[x1][y1][x2][y2][k]=min(f[x1][y1][x2][y2][k],dp(x1,y1,i,y2,k-1)+dp(i+1,y1,x2,y2,0)); } for(int i=y1;i<y2;i++) { f[x1][y1][x2][y2][k]=min(f[x1][y1][x2][y2][k],dp(x1,y1,x2,i,0)+dp(x1,i+1,x2,y2,k-1)); f[x1][y1][x2][y2][k]=min(f[x1][y1][x2][y2][k],dp(x1,y1,x2,i,k-1)+dp(x1,i+1,x2,y2,0)); } return f[x1][y1][x2][y2][k]; } int main() { while(~scanf("%d",&n)) { memset(pre,0,sizeof(pre)); memset(f,0x3f,sizeof(f)); for(int i=1;i<=8;i++) { for(int j=1;j<=8;j++) { scanf("%d",&a[i][j]); pre[i][j]=pre[i][j-1]+pre[i-1][j]-pre[i-1][j-1]+a[i][j]; } } printf("%.3lf\n",sqrt(dp(1,1,8,8,n-1)*1.0/n-(1.0*pre[8][8]/n)*(1.0*pre[8][8]/n))); } return 0; } </code>
2020-2021/teams/wangzai_milk/weekly/poj_1191.txt
· 最后更改: 2020/05/10 01:34 由
zars19
页面工具
显示页面
修订记录
反向链接
Copy this page
导出 PDF
回到顶部