#include<bits/stdc++.h>
using namespace std;
long long sh[10001];
int main(){
long long i,a,b,h;
while(scanf("%d%d%d",&a,&h,&b)!=EOF
for(i=a;i<b;++i)sh[i]=max(sh[i],h);
for(i=1,h=0;i<1e4;++i)
if(h!=sh[i]){
h=sh[i];cout<<i<<" "<<sh[i]<<" ";
}
return 0;
}
这样循环无法结束,应该为:
#include<bits/stdc++.h>
using namespace std;
long long sh[10001];
int main(){
long long i,a,b,h;
while(cin){
cin>>a>>h>>b;
for(i=a;i<b;++i)sh[i]=max(sh[i],h);
}
for(i=1,h=0;i<1e4;++i)
if(h!=sh[i]){
h=sh[i];cout<<i<<" "<<sh[i]<<" ";
}
return 0;
}