XDOJ695.等差数列及位置指示

2023-12-19 21:30

本文主要是介绍XDOJ695.等差数列及位置指示,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

标题 等差数列及位置指示

类别 数组

时间限制 2S

内存限制 1000Kb

问题描述 请写一个程序,判断给定整数序列能否构成一个等差数列。

输入说明 输入数据由两行构成,第一行只有一个整数 n(n<100),表示序列长度(该序列中整数的 个数); 第二行为 n 个整数,每个整数互不相同,且取值区间都为[-32768~32767],整数之间以空格 间隔。

输出说明 对输入数据进行判断,若不能构成等差数列,将数列递增排序,分别输出排序后数据间的 最大差值和最小差值,数据间以空格分隔; 若能构成等差数列,将数列递增排序,并输出排序后各个数据在原数列中的对应位置(位置 计数从 1 开始)。

输入样例1

6

21 15 4 18 35 11

输出样例 1

14 3

输入样例 2  

5

2 6 8 4 10  

输出样例 2

1 4 2 3 5

#define _CRT_SECURE_NO_WARNINGS#include<stdio.h>
#include<stdlib.h>int int_cmp(const void* num1, const void* num2)
{return (*(int*)num1 - *(int*)num2);
}int judge(int arr[], int len)
{int i = 0;int d = arr[1] - arr[0];for (i = 0; i < len - 1; i++){if (arr[i + 1] - arr[i] != d){return 0;}}return 1;
}int main()
{int n = 0;int arr[101] = { 0 };scanf("%d", &n);int store[101] = { 0 };for (int i = 0; i < n; i++){scanf("%d", &arr[i]);store[i] = arr[i];}qsort(arr, n, sizeof(arr[0]), int_cmp);int ret = judge(arr, n);if (ret){for (int i = 0; i < n; i++){for (int j = 0; j < n; j++){if (arr[i] == store[j]){printf("%d ", j + 1);}}}}else{int sub[100] = { 0 };for (int i = 0; i < n - 1; i++){sub[i] = arr[i + 1] - arr[i];}int max = sub[0];int min = sub[0];for (int i = 0; i < n - 1; i++){if (sub[i] > max){max = sub[i];}if (sub[i] < min){min = sub[i];}}printf("%d %d", max, min);}return 0;
}

这篇关于XDOJ695.等差数列及位置指示的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/513768

相关文章

如何用Java结合经纬度位置计算目标点的日出日落时间详解

《如何用Java结合经纬度位置计算目标点的日出日落时间详解》这篇文章主详细讲解了如何基于目标点的经纬度计算日出日落时间,提供了在线API和Java库两种计算方法,并通过实际案例展示了其应用,需要的朋友... 目录前言一、应用示例1、天安门升旗时间2、湖南省日出日落信息二、Java日出日落计算1、在线API2

POJ1269 判断2条直线的位置关系

题目大意:给两个点能够确定一条直线,题目给出两条直线(由4个点确定),要求判断出这两条直线的关系:平行,同线,相交。如果相交还要求出交点坐标。 解题思路: 先判断两条直线p1p2, q1q2是否共线, 如果不是,再判断 直线 是否平行, 如果还不是, 则两直线相交。  判断共线:  p1p2q1 共线 且 p1p2q2 共线 ,共线用叉乘为 0  来判断,  判断 平行:  p1p

Linux Centos 迁移Mysql 数据位置

转自:http://www.tuicool.com/articles/zmqIn2 由于业务量增加导致安装在系统盘(20G)磁盘空间被占满了, 现在进行数据库的迁移. Mysql 是通过 yum 安装的. Centos6.5Mysql5.1 yum 安装的 mysql 服务 查看 mysql 的安装路径 执行查询 SQL show variables like

PDFQFZ高效定制:印章位置、大小随心所欲

前言 在科技编织的快节奏时代,我们不仅追求速度,更追求质量,让每一分努力都转化为生活的甜蜜果实——正是在这样的背景下,一款名为PDFQFZ-PDF的实用软件应运而生,它以其独特的功能和高效的处理能力,在PDF文档处理领域脱颖而出。 它的开发,源自于对现代办公效率提升的迫切需求。在数字化办公日益普及的今天,PDF作为一种跨平台、不易被篡改的文档格式,被广泛应用于合同签署、报告提交、证书打印等各个

上海市计算机学会竞赛平台2024年8月月赛丙组等差数列的素性

题目描述 给定三个整数 nn,aa 与 dd,表示一个项数为 nn 的等差数列,首项为 aa,公差为 dd。 请统计,从这个等差数列中有多少数字是素数 输入格式 三个整数: nn,aa 与 dd 输出格式 单个整数:表示素数数量 数据范围 50%50% 的数据,1≤n≤10001≤n≤1000100%100% 的数据,1≤n≤100001≤n≤100001≤d≤10001≤d≤10

Xcode 运行项目时候选择模拟器位置处显示My Mac 的处理

1、先关闭Xcode,找到该工程项目目录,找到该项目的*.xcodeproj 文件,然后右键点击选择“显示包内容”; 2、包内容中显示以下三项:project.pbxproj .project.xcworkspace .xcuserdata 接着选择“xcuserdata”这个文件夹,将其整个移到废纸篓,重新打开你的项目,则可使用Simulator; 3、如果上诉方法没有用, 那么找到tar

网页中经常见到的,点击菜单栏,跳转到执行元素的位置

* 点击滑动制定位置* @param scrolldom 点击的制定元素* @param scrollTime 滑动的时间*/$.scrollto = function (scrolldom,scrollTime) {//dom点击事件$(scrolldom).click(function () {//查找点击dom里的属性,要在dom元素里添加var scrolldom = $(t

kendo widow 打开的位置

kendo widow 打开的位置 1.居中 $("#myWinId").data("kendoWindow").center().open(); 2.自己设定 $("#myWinId").kendoWindow({       width:"20%",      height:20%,      title:" my Title",       close: onClose

研究纹理采样器在像素级别的采样位置

问题 【纹理采样器】是一个基础的概念。假设有一个正方形面片,顶点的UV范围是0.0~1.0,那么在这个正方形面片上采样一张纹理时,会呈现出完整的纹理。 但我现在关注的问题是,在像素级别上,采样的位置是怎样的。具体来讲:对于UV值是(0.0,0.0)的点,它对应的采样位置是纹理最左上角像素的中心?还是纹理最左上角像素的左上角?即,下面左右哪个是正确的情况? 在宏观上,尤其是像素较多的时候,二者

【科普知识】一体化电机掉电后“位置精准复位“机制与规律

在工业自动化、机器人技术及精密控制领域,电机作为核心执行元件,其稳定运行和精确控制对于整个系统的性能至关重要。 然而,电机在运行过程中可能会遭遇突然断电的情况,这会导致电机失去驱动力并停止在当前位置,甚至在某些情况下发生位置偏移。 因此,电机掉电后的位置恢复机制成为了一个关键技术问题。本文将探讨电机掉电后位置恢复的原理机制,以期为相关领域的研究与应用提供参考。 一、电机掉电后的位置偏移现象