A1046
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 ;
}
------------恢复内容结束------------
A1046的更多相关文章
- PAT A1046 Shortest Distance
PAT A1046 Shortest Distance 标签(空格分隔): PAT TIPS: 最后一个数据点可能会超时 #include <cstdio> #include <al ...
- A1046. Shortest Distance
The task is really simple: given N exits on a highway which forms a simple cycle, you are supposed t ...
- A1046. Shortest Distance(20)
17/20,部分超时. #include<bits/stdc++.h> using namespace std; int N,x,pairs; int a,b; vector<int ...
- A1046 Shortest Distance (20)(20 分)
1046 Shortest Distance (20)(20 分)提问 The task is really simple: given N exits on a highway which form ...
- PAT A1046 Shortest Distance (20 分)
题目提交一直出现段错误,经过在网上搜索得知是数组溢出,故将数组设置的大一点 AC代码 #include <cstdio> #include <algorithm> #defin ...
- PAT甲级——A1046 Shortest Distance
The task is really simple: given N exits on a highway which forms a simple cycle, you are supposed t ...
- PAT/简单模拟习题集(二)
B1018. 锤子剪刀布 (20) Discription: 大家应该都会玩"锤子剪刀布"的游戏:两人同时给出手势,胜负规则如图所示: 现给出两人的交锋记录,请统计双方的胜.平.负 ...
- 1046 Shortest Distance (20 分)
1046 Shortest Distance (20 分) The task is really simple: given N exits on a highway which forms a si ...
- PAT题目AC汇总(待补全)
题目AC汇总 甲级AC PAT A1001 A+B Format (20 分) PAT A1002 A+B for Polynomials(25) PAT A1005 Spell It Right ( ...
随机推荐
- 阶段3 1.Mybatis_01.Mybatis课程介绍及环境搭建_05.mybatis环境搭建-前期准备
视频中右侧没有勾选 直接finish 用下面的sql里面的一些表来实现今天的功能 只需要用到里面的user表. 这是之前已经建好的数据库 把表都删除掉,用sql语句去创建表和表内的记录,最终的结果: ...
- android 程序的运行步骤(备忘)
java代码: public class HelloWorld { public static void main(String[] args) { System.out.println(" ...
- 【MM系列】SAP 关于更改物料的价格控制类型
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[MM系列]SAP 关于更改物料的价格控制类型 ...
- cocos2dx基础篇(17) 音乐音效SimpleAudioEngine
[3.x] (1)获取单例:sharedEngine() 改为 getInstance() (2)实现了:音量的调节. (3)修改了播放音效 playEffect() 的参数: ...
- ugui拖拽
整理了下以前写的 using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityE ...
- 梳理检测论文-Refinement Neural Network
Single-Shot Refinement Neural Network for Object Detection 目录 1. motivation 2. RefineDet 解析(Network ...
- P1012拼数
这是一道字符串的普及—的题. 输入几组数字,怎样组合起来才可以使最后结果最大.一开始这道题类似于那道删数问题,每次删除递增序列的最后一位,达到最小.而这个题我也是想到了贪心做法,于是想逐位判断,让在前 ...
- composer安装thinkphp5
之前安装过composer,里面的一些命令符可以看看,安装tp5我也是按照文档来的,也没什么难度.但是也出现一些问题: 安装tp5: 安装在本地php环境的www目录下,通过命令窗口切换到www目录下 ...
- [LeetCode] 140. 单词拆分 II
题目链接 : https://leetcode-cn.com/problems/word-break-ii/ 题目描述: 给定一个非空字符串 s 和一个包含非空单词列表的字典 wordDict,在字符 ...
- struts2_对Map进行双层迭代
转自:struts2_对Map进行双层迭代 //后台数据 public String execute() throws Exception { Map<String, List<Produ ...