阿里巴巴2018届应届生模拟考试题

题目

小猴子下山,沿着下山的路由一排桃树,每棵树都结了一些套子。小猴子想摘桃子,但是有一些条件需要遵守,小猴子只能沿着下山的方向走,不能回头,每棵树最多摘一个,而且一旦摘了一棵树的桃子,就不能再摘比这棵树结的桃子少的树上的桃子了,那么小猴子最多能摘几个桃子呢?举例说明,比如有5课树,分别结了10,4,5,12,8颗桃子,那么小猴子最多能摘3颗桃子,来自于结了4,5,8颗桃子的树。

这道题可以用dp来解。

dp[i]表示以第i号位置的树为最后一颗树,这种情况下所能取得的最大的桃子。

1.那么dp[i]一定大于等于1,因为若前面都不选,那这颗树一定能取得桃子。

2.对于第dp[j] (j<i)  需要考虑的是,这个j位置上的树能不能取桃子,以及取了桃子的话,能不能大于dp[i],若能则更新dp[i]。

  即:if(dp[j]+1>dp[i])  dp[i]=dp[j]+1;

那么。就可以有下面的代码了:

import java.util.Scanner;

public class Main{

    public static void main(String[] args) {
        Scanner scn = new Scanner(System.in);

        int trees = scn.nextInt();
        int[] peaches = new int[trees];

        for (int i = 0; i < trees; i++) {
            peaches[i] = scn.nextInt();
        }

        int[] dp = new int[trees];

        for (int i = 0; i < trees; i++) {
            dp[i] = 1;
            for (int j = 0; j < i; j++) {
                /**
                 * 表示,第j个位置上的树可以拿,并且拿了桃子的话,总大小能够超过第i个位置
                 */
                if (peaches[j] <= peaches[i] && dp[j] + 1 > dp[i]) {
                    dp[i] = dp[j] + 1;
                }
            }
        }
        int max = 1;
        for (int i : dp)
            max = max > i ? max : i;
        System.out.println(max);
    }

}

      

时间: 2024-10-09 16:05:19

阿里巴巴2018届应届生模拟考试题的相关文章

阿里巴巴2018届应届生在线编程测验-研发工程师C/C++

刚才去做了阿里巴巴的编程测验,好消息是抽到的题相对别的题简单一些,坏消息是编的太慢了,没有做完. 现在把题目和自己后来编出来的代码贴在这里,供大家参考. 题目: 1. 从命令行输入若干个正整数(大于等于2个),得到一个集合N.2. 从N中任意取出两个数并求和,得到的值构成集合A.3. 从N中任意取出两个数,并求差的绝对值,得到的值构成集合B.4. 从集合A和集合B当中,任意取出两个数,其差的绝对值,又构成集合DD的最小元素是d1,D的最大元素是d2,D的元素个数是s请输出d1+d2+s 题目要求

应届生校招找工作完整流程总结

原文发表自我的个人主页,请看原文,多谢支持 http://purplesword.info/get-job 昨天有同学问我找工作方面的事,感觉有很多疑问,想想有必要把我找工作那段时间学到的东西简单做个总结,供有需要的同学参考. 在找工作之前,和很多同学一样我有很多疑问,比如什么时候找工作这种事都不了解,但是找到工作之后,又忘了当初有哪些疑问.为了让这篇写的完整一点,我特地让一位对找工作不太了解.不愿透漏姓名的.机智的学弟帮忙,把他的疑问全部说出来,然后我汇总进行一个完整的总结.尤其是很多"脑残&

华为顶尖应届生年薪200万

最近,#华为顶尖应届生最高年薪200万# 这个话题火爆微博,截至7月25日,已有1.2亿阅读,7218讨论.一切源于7月23日,华为总裁办签发的电子邮件,邮件中表示,"华为要用顶级的挑战和薪酬去吸引顶尖人才,今年将从全世界招进20-30名天才'少年',今后逐渐增加,调整队伍作战能力结构."同时,邮件中显示,华为对8名2019届顶尖学生实行年薪制,最高两名员工的年薪为182万-201万元:两名员工的年薪为140.5万-156.5万元:最后还有四名员工的年薪为89.6万-100.8万元.

应届生必看的2020互联网求职指南!

因为疫情的影响,各家公司的春招事项一再延后,2020年互联网市场会不会受疫情影响?应届生2020年怎样求职?这是很多应届生担心的话题. 下面来看看小爱的分析~ 疫情给互联网行业带来哪些机遇受疫情影响,传统经济面临重创,各线下餐饮.流水企业纷纷关闭,与此同时,互联网行业正发挥着线上平台的巨大潜力. 游戏行业流水创历史新高 <阴阳师>.<和平精英>.<玩吧>等游戏平台在春节期间因为服务器崩溃上热搜,可以见得,这次疫情导致不能出行,一部分网友选择在家手游消遣. 据王者荣耀官方

应届生,你知道什么是档案、三方、挂靠、干部身份么?不知道还不快滚进来!

毕业季又到了,我们不能每天只知道找工作.实习.和妹子腻腻歪歪滚床单呀对不对!你的三方签了吗?档案去哪里了?什么叫挂靠?有什么好处?干部身份有什么用?能当饭吃么?这一系列的问题你都知道么?不知道的话,就搬个小板凳,听我讲给你哈. 档案 基本概念 一般而言,档案袋里主要装着高中阶段和大学阶段的经历,具体包括个人简历.工作履历表.学生档案(包括学历档案).单位证明.政治面貌材料(例如党员材料)等. 人事档案是记录一个人的主要经历.政治面貌.品德作风等个人情况的文件材料,起着凭证.依据和参考的作用,在个

【转载】2014 IT公司校招应届生待遇大揭秘

2014 IT公司校招应届生待遇大揭秘 公司名称        职位类别        待遇(校招年份) 百度                  开发类                13K*14.6 + 800饭补(400+20*20) (2014) (注:今年百度相对比较多的人拿了special)                  测试类.前端类      12K*14.6 + 800饭补(400+20*20)  (2014)                  产品本硕           

如何应对桀骜不驯的优秀应届生?

公司有1个非常优秀的应届生,领导很关注这个人,想把他培养成中层干部. 此人在应届生培训中引起了导师的注意,分配到产品线后,做出了许多成绩,得到了产品线总监的好评. 去年9月份,他写了一套用solr改进数据库分布式索引 wiki,并且出了 demo,做了压力测试,论证了可行性,还想到了运维方案,后来领导采纳了他的意见,让一个架构师带他一起做. 去年十一,他在家用 docker+shell+ruby写了1套测试部署框架,在他自己的产品线上用得很好,后来推广至全公司,到各部门宣讲,wiki写得很惊艳.

应届生就业,考研,培训该何去何从?

Kw:应届生就业,应届生考研,应届生培训,应届毕业生 数据显示,今年全国高校毕业生人数近750万,比被称为史上"最难就业季"的2014年又增加了22万人,在这样竞争激烈的就业形势下,不少应届生都表示无可奈何.对于大三大四的学生来说,毕业以后是该马上找工作积累经验,还是继续深造以期望在学历上提高竞争力,或者去参加培训以提高实际工作能力?对于大部分的同学来说普遍面临着这三种选择.今天就一起来分析一下这纠结的选择. 对于学霸,咱就不必多说了,不管具体能力怎样(至少成绩单上还说的过去),想要参

优秀实习生(应届生)需具备的几项能力

1.思考能力 "善于思考"是应届生简历上的高频词汇,但在实践中,具备独立思考能力的应届生少之又少. 职场中要求的"思考能力"并不是让你进入哲学领域去思考历史走向.人文变迁.岁月流逝,而是当你在工作中遇到问题时,能尝试想出解决方法.很多应届生在工作中遇到一丁点问题,想都不想张口就问.职场不是学校,主管更不是老师,老师的专职工作就是为你答疑解惑,可主管也有自己的活要做.影响双方工作效率的同时,更不利于自身提升. 如果你想过还找不到解决思路,便可和主管交流.把你的思考路径