社区讨论
WA最后一个点 求求
P1282[CEOI 1997] 多米诺骨牌参与者 2已保存回复 3
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 3 条
- 当前快照
- 1 份
- 快照标识符
- @mhjhoo71
- 此快照首次捕获于
- 2025/11/04 02:44 4 个月前
- 此快照最后确认于
- 2025/11/04 02:44 4 个月前
CPP
#include<bits/stdc++.h>
using namespace std;
int n,a[1005],b[1005],f[1005][10005],p = 5001,ans = 0;
int main(){
memset(f,0x3f3f3f,sizeof(f));
cin >> n;
for(int i = 1;i <= n; i++)
cin >> a[i] >> b[i];
f[1][a[1]-b[1]+p] = 0;
f[1][b[1]-a[1]+p] = 1;
for(int i = 2;i <= n; i++){
for(int j = -5000;j <= 5000; j++)
f[i][j+p] = min(f[i-1][j-(a[i]-b[i])+p],f[i-1][j-(b[i]-a[i])+p]+1);
}
for(int i = 0;i <= 5000;i ++){
if(f[n][i+p] <= 1000||f[n][-i+p] <= 1000){
ans = min(f[n][i+p],f[n][-i+p]);
break;
}
}
cout << ans;
return 0;
}
回复
共 3 条回复,欢迎继续交流。
正在加载回复...