当前位置:网站首页>LeetCode 1049. Weight of the last stone II daily question
LeetCode 1049. Weight of the last stone II daily question
2022-07-07 16:58:00 【@Little safflower】
Problem description
There is a pile of stones , Use an array of integers stones Express . among stones[i] It means the first one i The weight of a stone .
Every round , Choose any two stones , Then smash them together . Suppose the weights of the stones are x and y, And x <= y. The possible results of crushing are as follows :
If x == y, Then both stones will be completely crushed ;
If x != y, So the weight is x The stone will be completely crushed , And the weight is y The new weight of the stone is y-x.
Last , There's only one piece left at most stone . Return to this stone The smallest possible weight . If there is no stone left , Just go back to 0.Example 1:
Input :stones = [2,7,4,1,8,1]
Output :1
explain :
Combine 2 and 4, obtain 2, So the array turns into [2,7,1,8,1],
Combine 7 and 8, obtain 1, So the array turns into [2,1,1,1],
Combine 2 and 1, obtain 1, So the array turns into [1,1,1],
Combine 1 and 1, obtain 0, So the array turns into [1], This is the optimal value .
Example 2:Input :stones = [31,26,33,21,40]
Output :5
Tips :
1 <= stones.length <= 30
1 <= stones[i] <= 100source : Power button (LeetCode)
link :https://leetcode.cn/problems/last-stone-weight-ii
Copyright belongs to the network . For commercial reprint, please contact the official authority , Non-commercial reprint please indicate the source .
Java
class Solution {
public int lastStoneWeightII(int[] stones) {
int n = stones.length;
int sum = 0;
for(int i : stones){
sum += i;
}
int[] dp = new int[sum / 2 + 1];
for(int i = 0;i < n;i++){
for(int j = sum / 2;j >= stones[i];j--){
dp[j] = Math.max(dp[j],dp[j - stones[i]] + stones[i]);
}
}
return sum - dp[sum / 2] * 2;
}
}边栏推荐
猜你喜欢
![[designmode] proxy pattern](/img/ed/642aebc7b49cbf4d30b517665b2438.png)
[designmode] proxy pattern

记录Servlet学习时的一次乱码

二叉搜索树(特性篇)

The process of creating custom controls in QT to encapsulating them into toolbars (II): encapsulating custom controls into toolbars

浅浅理解.net core的路由

DNS 系列(一):为什么更新了 DNS 记录不生效?

Opencv configuration 2019vs

整理几个重要的Android知识,高级Android开发面试题

AutoLISP series (2): function function 2

Module VI
随机推荐
[Android -- data storage] use SQLite to store data
LeetCode 1696. 跳跃游戏 VI 每日一题
LeetCode 1981. 最小化目标值与所选元素的差 每日一题
Direct dry goods, 100% praise
QT中自定义控件的创建到封装到工具栏过程(二):自定义控件封装到工具栏
The latest interview experience of Android manufacturers in 2022, Android view+handler+binder
Binary search tree (basic operation)
The team of East China Normal University proposed the systematic molecular implementation of convolutional neural network with DNA regulation circuit
Opencv personal notes
应用在温度检测仪中的温度传感芯片
Talk about the realization of authority control and transaction record function of SAP system
运算符
Horizontal and vertical centering method and compatibility
typescript ts 基础知识之类型声明
【DesignMode】代理模式(proxy pattern)
模拟Servlet的本质
skimage学习(3)——Gamma 和 log对比度调整、直方图均衡、为灰度图像着色
QML beginner
LeetCode 152. 乘积最大子数组 每日一题
网关Gateway的介绍与使用