bzoj1237 [SCOI2008]配对
来源:互联网 发布:淘宝面膜销量排行榜 编辑:程序博客网 时间:2024/05/21 10:39
题目
dp题目,首先看数据范围,可得应该是接近O(n)的算法,我们先处理一下,把两个数组从小到大排序,再找找规律,发现转移只在三个数之间进行,我们画个图理解一下。
如果超过4个肯定没有这样优秀。
代码比较简单。
#include<bits/stdc++.h>#define N 100000#define Min(x,y,z) min(x,min(y,z))using namespace std;const long long inf=10000000000000;long long n,A[N+1],B[N+1];long long f[N+1];inline char nc(){ static char buf[100000],*p1=buf,*p2=buf; return p1==p2&&(p2=(p1=buf)+fread(buf,1,100000,stdin),p1==p2)?EOF:*p1++;}inline long long read(){ long long x=0,b=1; char c=nc(); for(;!(c<='9'&&c>='0');c=nc())if(c=='-')b=-1; for(;c<='9'&&c>='0';c=nc())x=x*10+c-'0'; return x*b;}inline long long cal(int x,int y){ if(A[x]==B[y])return inf; return abs(A[x]-B[y]);}int main(){ //freopen("in.txt","r",stdin); n=read(); for(int i=1;i<=n;i++)A[i]=read(),B[i]=read(); sort(A+1,A+n+1),sort(B+1,B+n+1); if(n==1&&A[1]==B[1])return puts("-1"),0; for(int i=1;i<=n;i++)f[i]=inf; f[0]=0; for(int i=1;i<=n;i++) { long long tmp=inf; if(i>=1)tmp=min(tmp,f[i-1]+cal(i,i)); if(i>=2)tmp=min(tmp,f[i-2]+cal(i,i-1)+cal(i-1,i)); if(i>=3)tmp=Min(tmp,f[i-3]+cal(i,i-1)+cal(i-1,i-2)+cal(i-2,i),f[i-3]+cal(i-2,i-1)+cal(i-1,i)+cal(i,i-2)); f[i]=tmp; } cout<<f[n]; return 0;}
注意配对时数不能相等,如果相等的话return inf
阅读全文
0 0
- 【bzoj1237】【scoi2008】【配对】【dp】
- BZOJ1237: [SCOI2008]配对
- bzoj1237 [SCOI2008]配对
- bzoj1237: [SCOI2008]配对
- BZOJ1237: [SCOI2008]配对
- bzoj1237 [SCOI2008]配对
- bzoj1237 wikioi2430 [SCOI2008]配对 dp
- [BZOJ1237][SCOI2008]配对(dp)
- bzoj1237 [SCOI2008]配对 贪心结论+插数dp
- BZOJ1237 配对 [DP]
- [SCOI2008]配对
- BZOJ 1237: [SCOI2008]配对
- bzoj 1237 [SCOI2008]配对
- 洛谷 2507 SCOI2008 配对
- Vijos P1530 配对(SCOI2008)题解
- 【bzoj 1237】[SCOI2008]配对 dp
- bzoj 1237: [SCOI2008]配对 (贪心+DP)
- bzoj 1237: [SCOI2008]配对(DP)
- C/C++求职宝典21个重点笔记(常考笔试面试点)
- oracle学习笔记 undo段及区的状态和使用
- 数据结构 — 插入排序
- PHP读取文件内容的五种方式
- jsday06(window小广告)
- bzoj1237 [SCOI2008]配对
- 人脸识别:Deep Face Recognition论文阅读
- bzoj1412 [ZJOI2009]狼和羊的故事
- bzoj1433 [ZJOI2009]假期的宿舍
- bzoj1934 [Shoi2007]Vote 善意的投票
- bzoj2127 happiness
- 精度保证下的新型深度网络压缩框架
- bzoj3192 [JLOI2013]删除物品
- bzoj4403 序列统计