题解 | #Redraiment的走法#
Redraiment的走法
http://www.nowcoder.com/practice/24e6243b9f0446b081b1d6d32f2aa3aa
import java.util.*;
import java.io.*;
public class Main {
public static void main(String[] arg)throws Exception{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String s;
while((s = br.readLine())!= null){
int n = Integer.parseInt(s);
String[] ss = br.readLine().split(" ");
int [] ns = new int[n];
for(int i =0; i<n;i++){
ns[i] = Integer.parseInt(ss[i]);
}
int maxStep = 0;
int []dp = new int[n];
for(int i =0;i<n;i++){
dp[i] = 1;
for(int j =0;j<i;j++){
if(ns[i]>ns[j]){
dp[i] = Math.max(dp[i],dp[j]+1);
}
}
if(maxStep < dp[i]){
maxStep = dp[i];
}
}
System.out.println(maxStep);
}
}
}
import java.io.*;
public class Main {
public static void main(String[] arg)throws Exception{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String s;
while((s = br.readLine())!= null){
int n = Integer.parseInt(s);
String[] ss = br.readLine().split(" ");
int [] ns = new int[n];
for(int i =0; i<n;i++){
ns[i] = Integer.parseInt(ss[i]);
}
int maxStep = 0;
int []dp = new int[n];
for(int i =0;i<n;i++){
dp[i] = 1;
for(int j =0;j<i;j++){
if(ns[i]>ns[j]){
dp[i] = Math.max(dp[i],dp[j]+1);
}
}
if(maxStep < dp[i]){
maxStep = dp[i];
}
}
System.out.println(maxStep);
}
}
}