提交时间:2025-05-04 21:26:29
运行 ID: 193010
#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 ",dp.size()); vector<int> dpp; for(auto num:v){ auto pos=upper_bound(dpp.begin(),dpp.end(),num); if(pos==dpp.begin())dpp.insert(dpp.begin(),num); else *(pos-1)=num; } printf("%d",dpp.size()); return 0; }