连续上升数列
Background
Special for beginners, ^_^
Description
请判断
�
n 个数组成的一个数列,是否是一个严格递增数列。
Format
Input
第一行输入一个正整数
�
(
1
<
�
≤
1000
)
n(1<n≤1000)。
第二行连续输入
n 个正整数,均在
int 型范围内。
Output
如果这
n 个数是严格递增的,输出 YES,否则输出 NO。
Samples
输入数据 1
5
1 2 5 10 11
输出数据 1
YES
Limitation
1s, 1024KiB for each test case.
下面函数可实现功能
bool pan(const std::vector<int>& nums) {
for (size_t i = 0; i < nums.size() - 1; ++i) {
if (nums[i] >= nums[i + 1]) {
return false;
}
}
return true;
}
#!/sur/bin/nve python
# coding: utf-8
def solution(in_s):
n, lis = in_s.split('\n') # 按行拆分输入。
lis = list(map(int, lis.split())) # 输入数列字符串转整型。
for i in range(int(n)-2): # 遍历数组。
if lis[i] >= lis[i+1]: # 后一个数不大于前一个数,返回No。
return 'No'
return 'Yes' # 完成遍历,返回Yes。
if __name__ == '__main__':
in_s = '''5
1 2 5 10 12'''
in_s2 = '''6
1 2 5 10 9 12'''
print(f"\n输入:\n{in_s2}\n\n输出:\n{solution(in_s2)}")
【以下回答由 GPT 生成】
n = int(input()) # 输入数列的元素个数
numbers = list(map(int, input().split())) # 输入数列的元素
def is_increasing_sequence(n, numbers):
for i in range(1, n):
if numbers[i] <= numbers[i-1]:
return "NO"
return "YES"
result = is_increasing_sequence(n, numbers)
print(result)
解释: 首先根据题目要求,我们需要获取输入的数列的长度n和数列本身。然后,我们定义一个函数is_increasing_sequence来判断数列是否是连续递增数列。在函数实现中,我们使用一个循环遍历数列的每一个元素,通过比较每一个元素与前一个元素的大小关系,如果发现有任意一个元素小于等于前一个元素,则返回"NO",否则继续遍历。如果遍历完所有元素都没有发现不满足条件的情况,则返回"YES"。最后,我们根据函数的返回结果输出相应的结果。