每日一练_14:计算日期到天数转换 and 幸运的袋子
创始人
2025-05-31 19:42:35
0

一.计算日期到天数转换

题目链接:

计算日期到天数转换

题目描述:

根据输入的日期,计算是这一年的第几天。
保证年份为4位数且日期合法。
进阶:时间复杂度:O(n) ,空间复杂度:O(1)

输入描述:

输入一行,每行空格分割,分别是年,月,日

输出描述:

输出是这一年的第几天

示例1:

输入:
2012 12 31
输出:
366

示例2:

输入:
1982 3 4
输出:
63

个人总结:

代码有注释,该题较简单,应该可以直接看懂。

代码实现:

import java.util.*;public class Main {public static void main(String[] args) {Scanner sc = new Scanner(System.in);int yy = sc.nextInt();int mm = sc.nextInt();int dd = sc.nextInt();int[] sum = {0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334, 365};//先不当成闰年int res = sum[mm - 1] + dd;//只有是闰年且大于二月份才多加一个1if (mm > 2 && isLeapYear(yy)) {res += 1;}System.out.println(res);}public static boolean isLeapYear(int yy) {if (yy % 4 == 0 && yy % 100 != 0 || yy % 400 == 0) {return true;}return false;}
}

二.幸运的袋子

题目链接:

幸运的袋子

题目描述:

一个袋子里面有n个球,每个球上面都有一个号码(拥有相同号码的球是无区别的)。如果一个袋子是幸运的当且仅当所有球的号码的和大于所有球的号码的积。
例如:如果袋子里面的球的号码是{1, 1, 2, 3},这个袋子就是幸运的,因为1 + 1 + 2 + 3 > 1 * 1 * 2 * 3
你可以适当从袋子里移除一些球(可以移除0个,但是别移除完),要使移除后的袋子是幸运的。现在让你编程计算一下你可以获得的多少种不同的幸运的袋子。

输入描述:

第一行输入一个正整数n(n ≤ 1000)
第二行为n个数正整数xi(xi ≤ 1000)

输出描述:

输出可以产生的幸运的袋子数

示例1:

输入:
3
1 1 1
输出:
2

个人总结:

回溯 + 剪枝

代码实现:

import java.util.*;public class Main {static int cnt = 0;public static void main(String[] args) {Scanner sc = new Scanner(System.in);int n = sc.nextInt();int[] nums = new int[n];for (int i = 0; i < n; i++) {nums[i] = sc.nextInt();}Arrays.sort(nums);dfs(nums, 0, 1, 0);System.out.println(cnt);}public static void dfs(int[] nums, int idx, int mul, int sum) {if (idx == nums.length) {return;}for (int i = idx; i < nums.length; i++) {//去重if (i > idx && nums[i] == nums[i - 1]) {continue;}mul *= nums[i];sum += nums[i];//如果sum > mulif (sum > mul) {cnt++;dfs(nums, i + 1, mul, sum);//如果不符合要求但是nums[i] == 1则继续向下搜索//因为1可以使sum增大而mul不变 所有还有可能达到sum > mul} else if (nums[i] == 1) {dfs(nums, i + 1, mul, sum);//上述条件均不满足 则后面没有满足条件的组合了} else {break;}mul /= nums[i];sum -= nums[i];}}
}

相关内容

热门资讯

胡大餐饮走出特色经营新路径:平... 作为北京簋街最具代表性的地标性餐饮品牌之一,胡大饭馆自1999年创立以来,始终坚持“守正创新、甄选食...
亚投行成功发行20亿元熊猫债,... 新华社北京7月22日电(记者任军、吴雨)亚洲基础设施投资银行(亚投行)近日在银行间市场发行20亿元2...
大庄园肉业二度冲刺A股IPO:... 瑞财经 刘治颖 近日,大庄园肉业集团股份有限公司(以下简称:大庄园肉业)披露关于首次公开发行股票并上...
布局低空,布局引领全球的万亿赛... 当前新质生产力相关的产业已成为最引人注目成长赛道,在众多新质生产力产业中,低空经济是少有的由我国引领...
特斯拉超级充电站餐厅开业,马斯... IT之家 7 月 22 日消息,特斯拉超级充电站餐厅(Supercharger Diner)今日在洛...
算力需求持续火热,人工智能ET... 截至2025年7月22日收盘,中证人工智能产业指数(931071)下跌0.82%。成分股方面涨跌互现...
一图解码:港股IPO一周回顾 ... 过去一周(2025.7.14-7.20),港股IPO市场共有3家公司递交了上市申请,分别为麦济生物、...
最强赛道,呈两极分化!有的猛增... 创新药赛道行情爆火的同时,医药基金的“留人能力”却呈现两极分化。 券商中国记者注意到,根据最新披露的...
菲律宾要失望了,知情人士:美国... 本月初,美国总统特朗普公布多国关税税率,其中,对菲律宾产品征收的“对等关税”从今年4月公布的17%升...
2025年广东省乡村旅游消费趋... 2024年,广东省乡村旅游接待游客5.1亿人次,占全省总旅游接待人次的58.6%;乡村旅游收入达37...
高晓峰:趋势线守卫战告捷 黄金... 来源:市场资讯 7月22日,国际黄金本周初受美元走软及贸易局势影响强势走高。美国通胀数据低于预期,黄...
原创 美... 在我们的日常生活中,电力早已融入了方方面面。我们习惯了出门时确保手机电量充足,家里需要WiFi的连接...
复牌“摘帽”!基金公司第一时间... 【导读】复牌当天再遭基金公司“补刀”,招商基金下调诺泰生物估值 中国基金报记者 若晖 因涉及财务造假...
24年老将、前公募总经理“奔私... 【导读】携手老同事创业,原公募总经理宋小龙备案上海理泉私募基金 中国基金报记者 吴君 又见公募基金总...
科创板开市6周年:已拥有589... 7月22日,科创板迎来开市6周年。这个中国资本市场最年轻的板块已经拥有589家上市公司、超7万亿元总...
科创板六周年!上市公司“掌门人... 【导读】 2025年7月22日,中国资本市场这片热土上,一块名为“科创板”的“试验田”已悄然耕耘六载...
聚焦"稳"... 北京2025年7月22日-- 当前,中国经济正经历深刻转型升级,企业面临市场波动、竞争加剧等多重挑战...
华泰柏瑞港股通时代机遇混合A:... AI基金华泰柏瑞港股通时代机遇混合A(011355)披露2025年二季报,第二季度基金利润292.6...