zifan2 @ 2023-08-18 11:12:13
这道题自认为做的没问题
我的错误代码:
#include <math.h>
#include <stdio.h>
#include <iostream>
#include <bits/stdc++.h>
#define lr long long int
using namespace std;
lr ls[5000],ll[5000]; lr n,maxx = 0;
int main()
{
cin >> n;
for(int i = 0 ; i < n ; i++) cin >> ls[i];
ll[0] = 1;
for(int i = 0 ; i < n ; i++)
{
if(!i) continue;
maxx = 0;
for(int j = 0 ; j < i ; j++) if(ls[j] < ls[i]) maxx = max(maxx,ll[j]);
ll[i] = maxx + 1;
}
sort(ll,ll + n);
cout << ll[n];
return 0;
}
请问各位大神,我哪里错了?
by zifan2 @ 2023-08-18 11:14:04
全WA了
by Rosaya @ 2023-08-18 11:21:36
你的数组不是 ll[n]
会有值。
下次请先自行测试样例。
by zifan2 @ 2023-08-18 11:22:47
额,写错了
by robertuu @ 2023-08-18 11:23:18
#include <math.h>
#include <stdio.h>
#include <iostream>
#include <bits/stdc++.h>
#define lr long long int
using namespace std;
lr ls[5000],ll[5000]; lr n,maxx = 0;
int main()
{
cin >> n;
for(int i = 0 ; i < n ; i++) cin >> ls[i];
ll[0] = 1;
for(int i = 0 ; i < n ; i++)
{
if(!i) continue;
maxx = 0;
for(int j = 0 ; j < i ; j++) if(ls[j] < ls[i]) maxx = max(maxx,ll[j]);
ll[i] = maxx + 1;
}
sort(ll,ll + n);
cout << ll[n-1]; // 看这里,要-1
return 0;
}
by zifan2 @ 2023-08-18 11:23:22
谢谢了