标签:pat 1046 rr int sum ii temp1 dir
#include<iostream>
using namespace std;
int main(){
int n;
scanf("%d",&n);
int dir[n+1],sum=0,temp;
dir[0]=0;
for(int i=1;i<=n;i++){
scanf("%d",&temp);
sum+=temp;
dir[i]=sum;//i i+1
}
int m;
scanf("%d",&m);
for(int i=0;i<m;i++){
int ii,rr,temp1;
scanf("%d%d",&ii,&rr);
if(ii>rr){
swap(ii,rr);
}
temp1=dir[rr-1]-dir[ii-1];
printf("%d\n",min(temp1,sum-temp1));
}
return 0;
}
总结
1.环与dijkstra思想类似固定一个点,求固定点到其他所有点的距离,并且计算总距离和,那半边的距离相减即可
2.注意要初始化起点为0
英语
问题 环的处理 无
标签:pat,1046,rr,int,sum,ii,temp1,dir 来源: https://blog.csdn.net/m0_45359314/article/details/113422674
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。