# Viaggio intrigante (Terry 2023)

**URL:** <https://forum.olinfo.it/t/viaggio-intrigante-terry-2023/8675>\
**Category:** Aiuto\
**Created:** [17 Dicembre 2023, 1:22pm UTC](https://forum.olinfo.it/t/viaggio-intrigante-terry-2023/8675 "2023-12-17T13:22:05Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![FrancescoFam](https://forum.olinfo.it/user_avatar/forum.olinfo.it/francescofam/32/1455_2.png) [@FrancescoFam](https://forum.olinfo.it/u/FrancescoFam)\
**Post date:** [17 Dicembre 2023, 1:22pm UTC](https://forum.olinfo.it/t/viaggio-intrigante-terry-2023/8675/1 "2023-12-17T13:22:06Z")

</div>

Buongiorno, stavo provando a risolvere questo problema, ma non riesco a capire perché il mio codice sbaglia alcuni casi.

```auto
void solve(int t) {
    int N;
    cin >> N;

    vector<pair<int,int>> X(N);
    for(int i = 0; i < N; ++i) {
        cin >> X[i].second >> X[i].first;
    }
    sort(X.begin(),X.end());
    int risposta = 0;
    int dp[N];
    for(int i=N-1;i>=0;i--){
    	dp[i]=1;
    	for(int j=i+1;j<N;j++){
    		if((X[i].first<=X[j].first)&&(X[i].second<=X[j].second)){
    		dp[i]=max(dp[i],dp[j]+1);
    		}
    	}
    }
    // aggiungi codice..
    for(int i=0;i<N;i++)risposta=max(risposta,dp[i]);
    cout << "Case #" << t << ": " << risposta << "\n";
}

```

---

<div class="post-metadata">

**Author:** ![fve5](https://forum.olinfo.it/user_avatar/forum.olinfo.it/fve5/32/2615_2.png) [@fve5](https://forum.olinfo.it/u/fve5)\
**Post date:** [19 Dicembre 2023, 1:53pm UTC](https://forum.olinfo.it/t/viaggio-intrigante-terry-2023/8675/2 "2023-12-19T13:53:12Z")

</div>

Sarebbe utile dare qualche informazione in più su cosa sta facendo il codice.  
Comunque mi sembra che tu stia risolvendo completamente diverso da quello richiesto nel testo del problema.
