数山峰
某地质勘探队正在研究一条山脉的 N 个连续山峰,山峰编号为 1 到 N。每个山峰的高度状态用字符串 S 表示:# 表示高峰,. 表示低谷。
地质学家需要统计存在多少山峰编号 i(1≤i≤N - 2)满足以下特殊地形特征:山峰 i 是高峰;山峰 i+1 是低谷;山峰 i+2 是高峰。即寻找所有满足“高峰-低谷-高峰”模式的连续三个山峰组的起始位置数量。
时间限制:1000ms,内存限制:256MB
输入格式
第一行:整数 N(山峰数量);
第二行:长度为 N 的字符串 S(山峰高度状态)。
输出格式
满足条件的山峰编号 i 的个数。
输入样例#1
6 #.##.#
输出样例#1
2
输入样例#2
1 #
输出样例#2
0
输入样例#3
9 ##.#.#.##
输出样例#3
3
数据范围:
1≤N≤2×105;S 仅包含字符 # 和 . 。
相似题推荐
画作
题目描述
墙上,挂着一幅由 n×n 个彩色方格组成的画作。画作的内容可以用一个 n×n 的字符矩阵来表示。
现在想要将这幅画顺时针旋转 90 度后重新悬挂,请你他计算出旋转后的画作是什么样的。
输入格式
第一行,一个整数表示 n
接下来 n 行,每行 n 个字符。
输出格式
输出 n 行,每行 n 个字符,表示顺时针旋转 90 度后的矩阵。
输入样例#1
4 ooxx xoox xxxx xxxx
输出样例#1
xxxo xxoo xxox xxxx
输入样例#2
2 12 34
输出样例#2
31 42
说明提示
1≤n≤1000
花坛
题目描述
花坛里有 n 朵花,每朵花的编号为 1,2,…,n。初始时,所有花的高度都是 0。
现在给定一个数列 h={h1,h2,…,hn},你可以重复进行如下的浇水操作,每次操作:任选一段连续区间 [l,r],区间内每朵花高度加 1。可以无限重复该操作,使得第 k 朵花的最终高度恰好为 hk(1≤k≤n)。
求完成目标需要的最小操作浇水次数。
输入格式
第一行一个整数,表示花的数量 n
第二行 n 个整数,依次表示每朵花需要达到的目标高度 h1,h2,…,hn
输出格式
输出一个整数,表示达成目标所需的最少浇水操作次数。
输入样例#1
5 3 1 2 3 1
输出样例#1
5
输入样例#2
8 4 23 75 0 23 96 50 100
输出样例#2
221
说明提示
1≤n≤100
0≤hi≤100
所有输入均为整数
