---
# System prepended metadata

title: 判斷數列連續不連續
tags: [Code]

---

---
title: 判斷數列連續不連續
tags: Code
description: Abs
---


判斷數列連續不連續
---
找出基因群並不是一件容易的工作，有一個計算生物學家想到一個聰明的方法來簡化這個問題。經過他的簡化後，基因群辨識的主要工作會被轉換成: 輸入一個由相異正整數組成的序列 S，然後判斷 S 的內容是否構成連續的一串整數。例如:S=(2,5,3,4) 的內容構成連續的一串整數 2,3,4,5；但是S=(2,6,3,4)的內容並不構成連續的一串整數 (缺了5)。給定一個數字所構成的序列，請撰寫一個程式來判斷這個序列中的數字是否構成連續的一串整數。

輸入範例 1：
2 6 5
輸出範例 1：
5 6 yes

輸入範例 2：
2 5 7
輸出範例 2：
5 7 no


![](https://i.imgur.com/c8LEjWH.png)

<br>

```python
## Exmaple input:3 2 5 4
arr = list(map(int,input().split(' '))) 
'''
split(空白就拆開)-->['3','2''5','4']
map用法: map(convrt type,list) (要轉成的類型,陣列)
--->map(int,['3','2''5','4'])---->[3,2,5,4] int類型陣列
arr =[3,2,5,4]
'''
del arr[0] 
arr.sort() 
'''
del arr[0]|| 刪除第0項(數列大小) 用不到 [3,2,5,4]-->[2,5,4]
arr.sort()|| list.sort() 由小到大排序 ex:[2,5,4]---->[2,4,5]
'''
for i in range(1,len(arr)): 
    if(arr[i]-arr[i-1] != 1):
        print(arr[0],arr[len(arr)-1],'no')
        break
'''
for i in range(1,len(arr)): | len([2,4,5]) 回傳int-->3 for i in range(1,3)
if 第i項-第(i-1)項 公差為1 --> 如果公差不為1 print(不連續)
ex: [2,4,5]
if(arr[1]-arr[0]!=1) --> if(4-2 != 1) --->(不連續)
因為前面有sort 所以陣列 (min,max) 
len(arr)-1 =3-1 =2
(arr[0],arr[len(arr)-1])--->(陣列第一項,陣列最後一項)

Final:print(arr[0],arr[len(arr)-1],'no')
'''
else:
     print(arr[0],arr[len(arr)-1],'yes')

```