笔试强训 Day 11:游游的水果大礼包、买卖股票的最好时机(二)、倒置字符串
2026/7/27 16:32:24 网站建设 项目流程

Day 11

游游的水果大礼包

解题思路:

importjava.util.*;publicclassMain{publicstaticvoidmain(String[]args){Scannerin=newScanner(System.in);longn=in.nextLong(),m=in.nextLong(),a=in.nextLong(),b=in.nextLong();System.out.println(cnt(n,m,a,b));}privatestaticlongcnt(longn,longm,longa,longb){longret=0;for(longi=0;i<=Math.min(n/2,m);i++){longapp=n-i*2;longpea=m-i;ret=Math.max(ret,i*a+Math.min(app,pea/2)*b);}returnret;}}

买卖股票的最好时机(二)

动态规划:

importjava.util.Scanner;// 注意类名必须为 Main, 不要有任何 package xxx 信息publicclassMain{publicstaticvoidmain(String[]args){Scannerin=newScanner(System.in);intn=in.nextInt();int[]nums=newint[n+1];for(inti=1;i<=n;i++)nums[i]=in.nextInt();// 在 i 天买入、卖出的最大收益int[]f=newint[n+1];int[]g=newint[n+1];f[1]=-nums[1];for(inti=2;i<=n;i++){f[i]=Math.max(f[i-1],g[i-1]-nums[i]);g[i]=Math.max(g[i-1],f[i-1]+nums[i]);}System.out.println(g[n]);}}

贪心

importjava.util.Scanner;// 注意类名必须为 Main, 不要有任何 package xxx 信息publicclassMain{publicstaticvoidmain(String[]args){Scannerin=newScanner(System.in);intn=in.nextInt();int[]nums=newint[n+1];for(inti=1;i<=n;i++)nums[i]=in.nextInt();intret=0;// 1 2 3for(inti=2;i<=n;i++){intp=nums[i]-nums[i-1];if(p>0)ret+=p;}System.out.println(ret);}}

倒置字符串

用列表手机字符串,再反转列表,最后拼接为字符串即可

importjava.util.*;// 注意类名必须为 Main, 不要有任何 package xxx 信息publicclassMain{publicstaticvoidmain(String[]args){Scannerin=newScanner(System.in);List<String>list=newArrayList<>();while(in.hasNext())list.add(in.next());Collections.reverse(list);System.out.println(String.join(" ",list));}}

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询