首页 > 其他分享 >第六章38

第六章38

时间:2022-11-11 23:00:55浏览次数:42  
标签:38 10000 int 个数 距离 集合 第六章 include

【题目描述】

 

现在给你一个从小到大排序的集合,定义其中两个元素的距离为它们在集合中的名次之差的绝对值。给你集合中的两个元素,请计算距离。

 

【输入】

 

有多行。第1行是一个数n(10000≤n≤1000000),代表集合中一共有n个数。接下来一行有n个数。这n个数由小到大排列(所有的数都为整型数据,并且没有相等的数)。第3行是一个数m(5000≤m≤10000),代表询问次数。然后有m行,每行两个数,a,b(a,b保证是集合中的元素,所以请不要考虑a,b不在集合中的特殊情况,a和b最大为2000000)表示询问a,b之间的距离。注意数据很大的!!!!

 

【输出】

 

       有m行。每行一个整数,表示每次询问a和b的距离。

 

【样例输入】

 

5
1 3 5 6 8

3
1 5
1 6
8 3

 

【样例输出】

 

2
3
3
#include<stdio.h>
#include<math.h>
int main()
{
    int n,i,j,sum,x,t1,t2,p1,p2;
    scanf("%d",&n);
    int m[n];
    for(i=0;i<n;i++)
    scanf("%d",&m[i]);
    scanf("%d",&x);
    for(i=0;i<x;i++)
    {
        scanf("%d %d",&t1,&t2);
        for(j=0;j<n;j++)
        if(m[j]==t1)
        p1=j;
        for(j=0;j<n;j++)
        if(m[j]==t2)
        p2=j;
        sum=fabs(p1-p2);
        printf("%d\n",sum);
    }
    return 0;
}

 

标签:38,10000,int,个数,距离,集合,第六章,include
From: https://www.cnblogs.com/xrj1229/p/16882318.html

相关文章

  • 第六章39
    【题目描述】 在西方,星期五和数字13都代表着坏运气,两个不幸的个体最后结合成超级不幸的一天。所以,不管哪个月的13日又恰逢星期五就叫“黑色星期五”。输入某年年号和该......
  • 第六章40
    【题目描述】 众所周知,Nono是一只喜欢睡懒觉的熊猫。“我曾经也是早睡早起,直到我膝盖中了一箭”,Nono如是解释道。现在Nono又遇到了一个难题:他睡醒了…但是显然,Nono并不......
  • 第六章30
    【题目描述】某石油公司计划建造一条由东向西的主输油管道。该管道要穿过一个有n口油井的油田。从每口油井都要有一条输油管道沿着最短路经(或南或北)与主管道相连。如果给......
  • 第六章31
    【题目描述】对数组a[10]中的十个整数从小到大进行连续编号,输出各个元素的编号。要求不能改变数组 a 中元素的顺序,并且相同的整数要具有相同的编号。【输入】仅一行。......
  • 第六章32
    【题目描述】对数组a[10]中的十个整数从小到大进行连续编号,输出各个元素的编号。要求不能改变数组 a 中元素的顺序,并且相同的整数要具有相同的编号。【输入】仅一行。......
  • 第六章33
    【题目描述】 给定一系列整数,对所有整数的每一位数字统计0~9各个数字的出现次数,求出现次数最多的数字。 【输入】 有两行,第1行是整数n(1≤n≤100),表示有n个整数;第2......
  • 第六章34
    【题目描述】 小明最近要负责图书馆的管理工作,需要记录下每天读者的到访情况,每位读者有一个编号,每条记录用读者的编号来表示,给出读者的来访纪录,请问每一条记录中的读者......
  • 第六章35
    【题目描述】 求出 2 到 n 之间 (含 n)的所有素数。 【输入】 仅一行。一个正整数n(2<n≤10000)。 【输出】  有两行。第1行是一个整数,表示素数的个数......
  • 第六章36
    【题目描述】 进入石油大学南大门,长度为L的马路东边有一排树,每两棵相邻的树之间的间隔都是1米。如果把马路看成一个数轴,马路的一端在数轴0的位置,另一端在L的位置;数轴上......
  • 第六章37
    【题目描述】 有n盏灯,编号为1~n,分别由相应的n个开关控制。开始时全部开关朝上(朝上为开,灯亮),然后进行以下操作:编号凡是1的倍数的灯反方向拨一次开关;是2的倍数的灯再反方向......