Cod sursa(job #1962753)

Utilizator 3DwArDPauliuc Edward 3DwArD Data 12 aprilie 2017 00:48:00
Problema Cutii Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.99 kb
#include <bits/stdc++.h>
using namespace std;
ifstream f("cutii.in");
ofstream g("cutii.out");
int n,t;
struct cutie{
    int x;
    int y;
    int z;
};
bool cmp(const cutie &a, const cutie &b){
    if(a.x<b.x)return 1;
    if(a.x>b.x)return 0;
    return 1;
}
int a[3502];
int main()
{
    f>>n>>t;
    for(int q=1;q<=t;q++){
        vector <cutie> v;
        cutie aux;
        aux.x=0;
        int ans=1;
        v.push_back(aux);
        memset(a,0,n);
        for(int i=1;i<=n;i++){
            f>>aux.x>>aux.y>>aux.z;
            v.push_back(aux);
        }
        sort(v.begin(),v.end(),cmp);
        a[1]=1;
        for(int i=2;i<=n;i++){
            int ok=1;
            a[i]=1;
            for(int j=i-1;j>=1;j--){
                if(v[i].y>v[j].y&&v[i].z>v[j].z){
                    a[i]=max(a[j]+1,a[i]);
                }
                j--;
            }
            if(a[i]>ans)ans=a[i];
        }
        g<<ans<<"\n";
    }
    return 0;
}