CSU1350 To Add which?
2014-07-26 23:18
330 查看
题目链接:
http://acm.csu.edu.cn/OnlineJudge/problem.php?id=1350
这题目因为每一个数都跟相邻的数有关,所以可以从左到右和从右到左一次扫一遍即可
代码:
http://acm.csu.edu.cn/OnlineJudge/problem.php?id=1350
这题目因为每一个数都跟相邻的数有关,所以可以从左到右和从右到左一次扫一遍即可
代码:
#include<iostream> #include<cstdio> #define M 100100 using namespace std; int num[M],Max[M],Min[M]; int max(int a,int b) { return a>b?a:b; } int main() { int T,n,D; long long ans; cin>>T; while(T--){ ans=0; cin>>n>>D; for(int i=0;i<n;i++) cin>>num[i]; Max[0]=num[0]; for(int i=1;i<n;i++) { if(Max[i-1]-num[i]>D) Max[i]=Max[i-1]-D; else Max[i]=num[i]; } Min[n-1]=num[n-1]; for(int i=n-2;i>=0;i--) { if(Min[i+1]-num[i]>D) Min[i]=Min[i+1]-D; else Min[i]=num[i]; } for(int i=0;i<n;i++) ans+=(max(Min[i],Max[i])-num[i]); cout<<ans<<endl; } return 0; }
相关文章推荐
- CSU 1350 To Add Which? 给序列增加最少的值使得相邻数差<=D 优先队列+贪心
- csuoj 1350: To Add Which?
- 中南大学第一届长沙地区程序设计邀请赛 To Add Which?
- Qt:Attempting to add QLayout "" to MainWindow "", which already has a layout
- F - To Add Which?
- ccah-500 第24题 Which two features does Kerberos security add to a Hadoop cluster
- QLayout: Attempting to add QLayout "" to MyTcpClient "", which already has a layout
- Programming Basic--why we need to add ' extern "C" ' in C++ program when calling the function which is complied by C complier?
- QLayout: Attempting to add QLayout XXX to XXX, which already has a layout
- Simple Path Data Resources that I Add to Every WPF and Silverlight Project
- Using OLE to Add Data
- Android酱油笔记之关于AlertDialog的Unable to add window token null is not for an application解决办法
- mt2523 How to Add characteristic with 128 UUID
- 241. Different Ways to Add Parentheses
- Use LCD Keyboard Shieid to show color sensor's data which received [2.1]
- Failed to load IDE add in 'C:\Program Files\Delphi_2007\bin\Borland.Studio.Together.dll'.解决办法
- [移动开发]AndroidStudio解决unspecifiedonprojectappresolvestoanAPKarchivewhichisnotsupported
- MongoDB数组更新操作$addToSet和$each修饰符
- 241. Different Ways to Add Parentheses
- 简析 addToBackStack使用和Fragment执行流程