题目描述
监护室每小时测量一次病人的血压,若收缩压在 90 - 14090−140 之间并且舒张压在 60 - 9060−90 之间(包含端点值)则称之为正常。现给出某病人若干次测量的血压值,计算病人保持正常血压的最长小时数。
输入
第一行为一个正整数 n,n < 100;
其后有 nn 行,每行 22 个正整数,分别为一次测量的收缩压和舒张压(都在 [1,200]范围内),中间以一个空格分隔。
输出
输出仅一行,血压连续正常的最长小时数。
样例输入
4
100 80
90 50
120 60
140 90
样例输出
2
分析
这题只需定义两个数组,计数就行
代码如下:
#include<bits/stdc++.h>
using namespace std;
int main(){
long long n,a[101],b[101],cc=0,s=0;
cin>>n;
for(int i=1;i<=n;i++){
cin>>a[i]>>b[i];
}
for(int i=1;i<=n;i++){
if(a[i]>=90&&a[i]<=140&&b[i]>=60&&b[i]<=90){//正常变量+1
cc++;
}
if(!(a[i]>=90&&a[i]<=140&&b[i]>=60&&b[i]<=90)){//中断变量要清零
cc=0;
}
if(s<cc) s=cc;//取最大值
}
cout<<s;
return 0;
}