日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

贪心策略摘果子(洛谷P1478题题解,Java语言描述)

發布時間:2025/3/15 java 17 豆豆
生活随笔 收集整理的這篇文章主要介紹了 贪心策略摘果子(洛谷P1478题题解,Java语言描述) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

題目要求

P1478題目鏈接


分析

本題的低配版題目鏈接 → 題解

那個題就是純水題沒啥可寫的,我除了貼代碼無話可說,但這題吧,雖然不算難,但也可一說。

建議大家移步這里 → 精辟題解
這位爺寫了本題的暴力搜索、剪枝搜索、記憶化搜索、動態規劃(背包)、貪心的各種詳解,可以說對初學者來說很好啦。OrzOrzOrz……

顯然,本題既然可用貪心,貪心就是最快方案啦,我們只需要每次取最省力(最小代價)的一個果子,即可更快得到最優解。
貪心,妙不可言~~

順便簡單提一提貪心:
貪心算法是指,在對問題求解時,總是做出在當前看來是最好的選擇。也就是說,不從整體最優上加以考慮,他所做出的是在某種意義上的局部最優解。貪心算法不是對所有問題都能得到整體最優解,關鍵是貪心策略的選擇,選擇的貪心策略必須具備無后效性,即某個狀態以前的過程不會影響以后的狀態,只與當前狀態有關。

之前我也簡單的提過貪心,貪心往往能取得更高的效率,但適用范圍不是那么廣泛,需要我們認真思考什么時候適合用什么時候不能用。當然,本題作為洛谷橙題,讀罷題意,貪心足矣……

請看我AC代碼吧!

AC代碼(Java語言描述)

import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);int num = scanner.nextInt(), strength = scanner.nextInt(), maxHeight = scanner.nextInt()+scanner.nextInt();int[] array = new int[101];for (int i = 0; i < num; i++) {int tempHeight = scanner.nextInt(), needStrength = scanner.nextInt();if (tempHeight <= maxHeight) {array[needStrength]++;}}scanner.close();int counter = 0, sum = 0;outer:for (int i = 0; i <= 100; i++) {while (array[i] > 0) {sum += i;if (sum <= strength) {counter++;array[i]--;} else {break outer;}}}System.out.println(counter);} }

總結

以上是生活随笔為你收集整理的贪心策略摘果子(洛谷P1478题题解,Java语言描述)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。