bzoj 2321: [BeiJing2011集训]星器 乱搞
来源:互联网 发布:plc网络名称 编辑:程序博客网 时间:2024/06/16 14:33
题意
给定一个矩阵,定义一个操作:
选择两个同一行或同一列不相邻的点,将这两个点上各一个星向中间移动一位,产生魔力为两点间距离-1,求始态到终态的产生魔力
n,m<=200,Ai,j<=1000
分析
真佩服能想出这道题的人。。。
我们定义一个点(i,j)的势能为i*i+j*j。
假设现在操作选了两个点(i,j)和(i,k)且j+2<=k
操作前的势能为
操作后的势能为
前-后得
所以答案就是初始状态的势能减去结束状态的势能/2.
这。。。
代码
#include<iostream>#include<cstdio>#include<cstdlib>#include<cstring>#include<algorithm>using namespace std;typedef long long LL;int n,m;int main(){ scanf("%d%d",&n,&m); LL ans=0; for (int i=1;i<=n;i++) for (int j=1;j<=m;j++) { int x; scanf("%d",&x); ans+=x*(i*i+j*j); } for (int i=1;i<=n;i++) for (int j=1;j<=m;j++) { int x; scanf("%d",&x); ans-=x*(i*i+j*j); } printf("%lld",ans/2); return 0;}
阅读全文
0 0
- bzoj 2321: [BeiJing2011集训]星器 乱搞
- BZOJ 2321 BeiJing2011集训 星器
- BZOJ 2321 [BeiJing2011集训] 星器
- BZOJ 2321: [BeiJing2011集训]星器
- 【BZOJ 2321】[BeiJing2011集训]星器 脑洞
- BZOJ 2321: [BeiJing2011集训]星器 脑洞
- 2321: [BeiJing2011集训]星器
- 2321: [BeiJing2011集训]星器
- 2321: [BeiJing2011集训]星器
- bzoj2321[BeiJing2011集训]星器
- BZOJ2321 [BeiJing2011集训]星器
- BZOJ2321 [BeiJing2011集训]星器 能量守恒定律
- BZOJ2321 [BeiJing2011集训]星器 能量守恒定律
- BZOJ 2461: [BeiJing2011]符环
- bzoj 2461: [BeiJing2011]符环
- bzoj 2461: [BeiJing2011]符环
- bzoj 2461: [BeiJing2011]符环
- Bzoj 2460: [BeiJing2011]元素
- Libsvm工具箱在matlab中使用的编译过程
- leetcode115. Distinct Subsequences
- 内连接 外连接(left join/ right join)
- 【业界】基于腾讯Angel的LDA*入选VLDB,超越微软LightLDA
- Ubuntu16.04下MongoDB的安装和使用
- bzoj 2321: [BeiJing2011集训]星器 乱搞
- POJ
- 剑指offer——29.最小的k个数
- 随便写写
- Executor框架简介
- Java
- 演讲实录|马晓宇:When TiDB Meets Spark
- js中json的使用
- CSS-同一个li下,图片和文字一起,如何使得全部垂直居中