当前位置: 首页 > java >正文

[蓝桥杯 2021 省 AB] 砝码称重 Java

import java.util.*;public class Main {public static void main(String[] args) {Scanner sc = new Scanner(System.in);int n = sc.nextInt();int[] w = new int[n + 1];int sum = 0; // 所有砝码重量之和for (int i = 1; i <= n; i++) {w[i] = sc.nextInt();sum += w[i];}sc.close();int[] dp = new int[sum + 1]; // 表示重量i是否能称出dp[0] = 1; // 0重量可以称出int ans = 0;for (int i = 1; i <= n; i++) {for (int j = sum; j >= w[i]; j--) { // 天平一边放重量为w[i]的砝码,一边放重量为j的砝码if (dp[j - w[i]] == 1 && dp[j] != 1) { // j-w[i]重量可以求出,同时j重量的砝码没被放过dp[j] = 1;ans++;}}}for (int i = 1; i <= n; i++) {for (int j = 1; j + w[i] <= sum; j++) { // 天平放重量j的那一边的砝码移到w[i]那一边上if (dp[j + w[i]] == 1 && dp[j] != 1) { // j+w[i]重量可以求出,同时j重量的砝码没被放过dp[j] = 1;ans++;}}}System.out.println(ans);}
}

每日一水~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

http://www.xdnf.cn/news/3420.html

相关文章:

  • 【论文速递】2025年08周 (Robotics/Embodied AI/LLM)
  • Y1代码AC集
  • 坚鹏:平安保险集团《保险行业发展趋势与AI应用方法及案例》培训
  • 【Redis】Another Redis Desktop Manager 安装指南
  • 深入理解虚拟机与容器:原理、对比与应用场景分析
  • 动态规划简单题2
  • 算法-堆、排序算法、矩阵乘法
  • 面试手撕——迭代法中序遍历二叉树
  • 负载均衡深度实践:基于Nginx+Keepalived的高可用方案与Zabbix监控设计
  • Cesium Entity动态更新
  • 嵌入式AI还是一片蓝海
  • Day107 | 147.对链表进行插入排序 | 简单选择、冒泡、直接插入
  • 【专题五】位运算(2)
  • AXI中的out of order和interleaving的定义和两者的差别?
  • OSPF的路由
  • Go-web开发之社区功能
  • Java 中那些奇怪的空指针报错场景及解决方案NullPointerException
  • 【计算机视觉】语义分割:MMSegmentation:OpenMMLab开源语义分割框架实战指南
  • MySQL数据同步之Canal讲解
  • 2025年- H16-Lc124-169.多数元素(技巧)---java版
  • 7.0/Q1,GBD数据库最新文章解读
  • ClackyAI:下一代智能云开发环境的技术革新与实践价值
  • WPF使用依赖注入框架AutoMapper
  • 仿腾讯会议——服务器结构讲解
  • Matlab/Simulink - BLDC直流无刷电机仿真基础教程(四) - PWM调制模拟
  • 后端工程师需要掌握哪些基础技能
  • 机器人--底盘
  • 人才答辩ppt优化技巧_杰青_优青_万人计划青年拔尖人才_青年长江学者ppt制作案例
  • 2025五一杯A题五一杯数学建模思路代码文章教学:支路车流量推测问题
  • 部署.NET6.0 Web API项目到Docker