Java | Leetcode Java题解之第473题火柴拼正方形

server/2024/10/15 19:16:35/

题目:

题解

class Solution {public boolean makesquare(int[] matchsticks) {int totalLen = Arrays.stream(matchsticks).sum();if (totalLen % 4 != 0) {return false;}int len = totalLen / 4, n = matchsticks.length;int[] dp = new int[1 << n];Arrays.fill(dp, -1);dp[0] = 0;for (int s = 1; s < (1 << n); s++) {for (int k = 0; k < n; k++) {if ((s & (1 << k)) == 0) {continue;}int s1 = s & ~(1 << k);if (dp[s1] >= 0 && dp[s1] + matchsticks[k] <= len) {dp[s] = (dp[s1] + matchsticks[k]) % len;break;}}}return dp[(1 << n) - 1] == 0;}
}

http://www.ppmy.cn/server/132332.html

相关文章

ajax请求

ajax实现的步骤 1.创建xhr[XmlHttpRequest]对象 var xhr new XMLHttpRequest(); 2.配置请求信息 xhr.open("get|post","url",false/true); 3.发送请求 xhr.send(); 4.判断请求是否发送成功发 if(http_request.readyState4 && http_request…

Java基础(1)

1.来源 Java最初是由美国Sun公司开发的&#xff0c;最初是为了开发面向家电产品的软件而设计的。1981年&#xff0c;Sun公司在研究‌C的基础上&#xff0c;重新定义了一套新的语言系统&#xff0c;这就是Java的前身——‌Oak。后来经过不断改进&#xff0c;Sun公司于1995年正式…

算法刷题技巧

算法题&#xff1a;https://leetcode.cn/studyplan/top-100-liked/ 哈希表 使用哈希表&#xff0c;增删改查的时间复杂度均为O(1)。何时使用哈希表&#xff1f; 在某个区域内查找一个已知元素&#xff0c;可以使用哈希表作为这个区域根据一个特征对元素进行分类&#xff0c;特征…

腾讯图标点选模型识别

注意&#xff0c;本文只提供学习的思路&#xff0c;严禁违反法律以及破坏信息系统等行为&#xff0c;本文只提供思路 如有侵犯&#xff0c;请联系作者下架 该文章模型已经上线ocr识别网站&#xff0c;欢迎测试&#xff01;&#xff01;&#xff0c;地址&#xff1a;https://yxl…

‌如何在‌Windows系统中开启和关闭预览窗格/详细信息预览

Win11升级后&#xff0c;会自动在右侧预览文件&#xff0c;很是影响操作。今天&#xff0c;就一起来了解如何打开和关闭的吧&#xff01; 预览窗格 详细信息窗格 解决办法 打开“此电脑”&#xff0c;选择“查看”&#xff0c;关闭“预览窗格”和“详细信息窗格”。

giugughk

c语言中的小小白-CSDN博客c语言中的小小白关注算法,c,c语言,贪心算法,链表,mysql,动态规划,后端,线性回归,数据结构,排序算法领域.https://blog.csdn.net/bhbcdxb123?spm1001.2014.3001.5343 给大家分享一句我很喜欢我话&#xff1a; 知不足而奋进&#xff0c;望远山而前行&am…

WPF 自定义用户控件(Content根据加减按钮改变值)

前端代码&#xff1a; <UserControl.Resources><Style x:Key"Num_Button_Style" TargetType"Button"><Setter Property"MinWidth" Value"30" /><Setter Property"Height" Value"35" />&l…

2024.10.14 软考学习笔记

刷题网站&#xff1a; 软考中级软件设计师在线试题、软考解析及答案-51CTO题库-软考在线做题备考工具