【题目描述】
监护室每小时测量一次病人的血压,若收缩压在90-140之间并且舒张压在60-90之间(包含端点值)则称之为正常,现给出某病人若干次测量的血压值,计算病人保持正常血压的最长小时数。
【输入】
第一行为一个正整数n(n<100),其后有n行,每行2个正整数,分别为一次测量的收缩压和舒张压。
【输出】
输出仅一行,血压连续正常的最长小时数。
【输入样例】
4
100 80
90 50
120 60
140 90
【输出样例】
2
#include<iostream>
#include<cmath>
using namespace std;
int main()
{
int n = 0;
cin >> n;
int a = 0, b = 0;
int max_count = 0;
int count = 0;
for (int i = 0; i < n; i++) {
cin >> a >> b;
if (a >= 90 && a <= 140 && b >= 60 && b <= 90)
{
count++;
}
else {
max_count = max(max_count, count);
count = 0;
}
}
max_count = max(max_count, count);
cout << max_count;
return 0;
}
在循环结束之后必须再进行一次max_count = max(max_count, count);
,可能存在刚好最后的几条数据加起来正常的小时比前面长的情况。然后打印max_count即可。