n个节点围成一个环,每个节点之间的距离已知。输入n并给出n个节点的距离,输入m组节点编号(两个),求这两个节点编号间的最短距离。

1 建立dis[]数组,记录V1点到每一个点的顺时针距离,sum计算环的总距离。

2 输入m组节点编号,如果左边的值大于右边的值,则使用swap()函数将其交换。

3 计算temp=dis[right-1]-dis[left-1],比较temp和sum-temp,输出最小的即为最短距离。

注1:swap()函数即将两个变量交换:swap(a,b);

注2:#include<algorithm>:包含swao()和min()两个函数的函数库,当要使用这两个函数的时候需要写在开头。

 #include<cstdio>
#include<algorithm>
using namespace std;
const int MAXN=;
int dis[MAXN];
int main(){
int sum=,tem,query,n,left, right;
scanf("%d",&n);
for(int i=;i<=n;i++){
scanf("%d",&tem);
sum+=tem;
dis[i]=sum;
}
scanf("%d",&query);
for(int i=;i<query;i++){
scanf("%d%d",&left,&right);
if(left>right) swap(left,right);//交换left和right
int temp=dis[right-]-dis[left-];
printf("%d\n", min(temp,sum-temp));
} return ;
}

------------恢复内容结束------------

最新文章

  1. html中的图像动态加载问题
  2. 最新《App Store审核指南》翻译
  3. C#系统委托之Action And Func
  4. 一台服务器发布多个tomcat并注册服务名办法
  5. table动态添加删除一行和改变标题
  6. VS插件开发
  7. ORACLE性能优化之SQL语句优化
  8. 在xml中添加array
  9. JS判断鼠标从什么方向进入一个容器
  10. Day 3 @ RSA Conference Asia Pacific & Japan 2016 (morning)
  11. Quartz.NET配置(Log4net)
  12. Linux下更新瑞芯微固件
  13. Datatable.Compute小技巧
  14. java练习 - 字符串反转
  15. 解析PHP中常见的mongodb查询操作
  16. Codeforces878 A. Short Program
  17. js:获取事件源的兼容性写法
  18. 无法加载协定为“ServiceReference1.xxxxxx”的终结点配置部分,因为找到了该协定的多个终结点配置。请按名称指示首选的终结点配置部分。
  19. 大津法---OTSU算法
  20. ls --help 常用命令

热门文章

  1. Selenium学习之==&gt;Css Selector使用方法
  2. html不点击提交,自动post
  3. 【HANA系列】SAP HANA SQL获取当前日期加若干天后的日期
  4. 【ABAP系列】SAP ABAP POPUP_TO_CONFIRM 弹出框总结
  5. MySQL学习-MySQL内置功能_索引与慢查询
  6. 应用安全 - Web框架 - Apache Solr - 漏洞汇总
  7. 【Qt开发】QThread介绍
  8. Mac020--常用插件
  9. 深入理解java:2.2. 同步锁Synchronized及其实现原理
  10. SET ANSI_NULL ON 和 SET QUOTED_IDENTIFIFR ON