Submission
Status:
(-SSS)(PPP)(PPPP)(-SSSSSS)(-SSSSSS)(-SSSSSSSSSS)(-SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS)
Subtask/Task Score:
{0/9}{5/5}{6/6}{0/11}{0/14}{0/25}{0/30}
Score: 11
User: GGEZLOLx3D
Problemset: ผลึกเวลา (Crystal)
Language: cpp
Time: 0.028 second
Submitted On: 2026-03-26 20:38:50
#include<bits/stdc++.h>
using namespace std;
#define int long long
#define INT_MAX 1e15
signed main(){
cin.tie(NULL)->sync_with_stdio(false);
int n,m,i,j,nn,t,en,mon,k,st,mod=1e9+7,u;
cin >> u >> k >> n;
int a,b,c;
vector<pair<int,pair<int,int>>> vec;
for(i=0;i<n;i++){
cin >> a >> b >> c;
vec.push_back({c,{a,b}});
}
sort(vec.begin(),vec.end());
vector<int> dp(n,0),lis;
for(i=0;i<n;i++){
auto it=upper_bound(lis.begin(),lis.end(),vec[i].second.first);
if(it==lis.end()){
lis.push_back(vec[i].second.first);
}
else{
int pig=it-lis.begin();
lis[pig]=vec[i].second.first;
}
dp[i]=lis.size();
}
cout << dp[n-1];
}
/*
5 18 30
1 2 93 84 2
12 1261 0
LRRRRRRRRRRR
9 12 9
LURURDRUU
7 -4 3
RULUULD
7 2 7 4 9 3 3 5 8
5 2
0 1
2 2
3 6
6 6
9 10
10
15
5 2
0 0
2 0
7 0
-2 0
-1 0
10
3
*/