首页 > 其他 > 详细

交错序列, 美团笔试题

时间:2020-06-28 22:28:57      阅读:64      评论:0      收藏:0      [点我收藏+]

动态规划

import java.util.*;
public class Main {
    public static void main(String[] args) { 
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int[] a = new int[n];
        for(int i=0; i < n; i++) a[i] = sc.nextInt();
        int[] f = new int[n];
        f[0] = 1;
        for(int i=1; i < n; i++) {
            if(a[i] == a[i-1]) 
                f[i] = f[i-1];
            else
                f[i] = f[i-1] + 1;
        }
        int res = 0; 
        for(int i=0; i < n; i++) 
            res = Math.max(res, f[i]);
        System.out.println(res);
    }
}
/*
f[i] 表示以a[i]结尾最长交错序列的长度
if a[i] == a[i-1] f[i] = f[i-1]
else f[i] = f[i-1] + 1
*/

交错序列, 美团笔试题

原文:https://www.cnblogs.com/lixyuan/p/13205033.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!