提交时间:2025-05-04 21:17:55

运行 ID: 193008

#include<bits/stdc++.h> using namespace std; int main(){ int temp; vector<int> v; while(scanf("%d",&temp)!=EOF) v.insert(v.begin(),temp); vector<int> dp; for(auto num:v){ auto pos=upper_bound(dp.begin(),dp.end(),num); if(pos==dp.end())dp.push_back(num); else *pos=num; } printf("%d\n",dp.size()); dp.clear(); for(auto num:v){ auto pos=lower_bound(dp.begin(),dp.end(),num); if(pos==dp.end())dp.push_back(num); else *pos=num; } printf("%d",dp.size()); return 0; }