From 12fc211d72f224a02b140f86b82bc8dd51472899 Mon Sep 17 00:00:00 2001 From: yi-ge Date: Sat, 30 Dec 2023 13:37:44 +0800 Subject: [PATCH] =?UTF-8?q?add:=20=E4=B8=80=E5=91=A8=E4=B8=AD=E7=9A=84?= =?UTF-8?q?=E7=AC=AC=E5=87=A0=E5=A4=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 4 ++++ images/math/day_of_the_week.jpeg | Bin 0 -> 64132 bytes src/math/day_of_the_week.rs | 29 +++++++++++++++++++++++++++ src/math/mod.rs | 1 + tests/math/day_of_the_week_test.rs | 31 +++++++++++++++++++++++++++++ tests/math/mod.rs | 1 + 6 files changed, 66 insertions(+) create mode 100644 images/math/day_of_the_week.jpeg create mode 100644 src/math/day_of_the_week.rs create mode 100644 tests/math/day_of_the_week_test.rs diff --git a/README.md b/README.md index e4ad94b..84f7b66 100644 --- a/README.md +++ b/README.md @@ -736,3 +736,7 @@ Rust标准库`std::collections`提供了4种通用容器类型,包含一下8 - [参加考试的最大学生数](src/math/maximum_students_taking_exam.rs) [位运算, 数组, 动态规划, 状态压缩, 矩阵] - LeetCode 1349. 参加考试的最大学生数 + +- [一周中的第几天](src/math/day_of_the_week.rs) [数学] + + - LeetCode 1185. 一周中的第几天 diff --git a/images/math/day_of_the_week.jpeg b/images/math/day_of_the_week.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..b5afa05b7b7694a3c0d88fd59879ec6d2ffdcff2 GIT binary patch literal 64132 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

YE)X<>xbrt!DXu57IaIPZObyvlyIYnW=lCTTD_M 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 literal 0 HcmV?d00001 diff --git a/src/math/day_of_the_week.rs b/src/math/day_of_the_week.rs new file mode 100644 index 0000000..768d4df --- /dev/null +++ b/src/math/day_of_the_week.rs @@ -0,0 +1,29 @@ +// 一周中的第几天 +// https://leetcode.cn/problems/day-of-the-week +// INLINE ../../images/math/day_of_the_week.jpeg + +pub struct Solution; + +impl Solution { + pub fn day_of_the_week(day: i32, month: i32, year: i32) -> String { + let week = vec![ + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday", + "Sunday", + ]; + let month_days = vec![31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30]; + let mut days = 365 * (year - 1971) + (year - 1969) / 4; + for i in 0..(month - 1) { + days += month_days[i as usize]; + } + if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) && month > 2 { + days += 1; + } + days += day; + return week[(days + 3) as usize % 7].to_string(); + } +} diff --git a/src/math/mod.rs b/src/math/mod.rs index 54022e9..0aff0db 100644 --- a/src/math/mod.rs +++ b/src/math/mod.rs @@ -18,3 +18,4 @@ pub mod find_the_pivot_integer; pub mod next_greater_numerically_balanced_number; pub mod number_of_burgers_with_no_waste_of_ingredients; pub mod maximum_students_taking_exam; +pub mod day_of_the_week; diff --git a/tests/math/day_of_the_week_test.rs b/tests/math/day_of_the_week_test.rs new file mode 100644 index 0000000..5be2cdd --- /dev/null +++ b/tests/math/day_of_the_week_test.rs @@ -0,0 +1,31 @@ +use rust_practice::math::day_of_the_week::Solution; + +#[test] +fn day_of_the_week() { + // 示例 1: + // 输入:day = 31, month = 8, year = 2019 + // 输出:"Saturday" + let day = 31; + let month = 8; + let year = 2019; + let result = Solution::day_of_the_week(day, month, year); + assert_eq!(result, "Saturday"); + + // 示例 2: + // 输入:day = 18, month = 7, year = 1999 + // 输出:"Sunday" + let day = 18; + let month = 7; + let year = 1999; + let result = Solution::day_of_the_week(day, month, year); + assert_eq!(result, "Sunday"); + + // 示例 3: + // 输入:day = 15, month = 8, year = 1993 + // 输出:"Sunday" + let day = 15; + let month = 8; + let year = 1993; + let result = Solution::day_of_the_week(day, month, year); + assert_eq!(result, "Sunday"); +} diff --git a/tests/math/mod.rs b/tests/math/mod.rs index 54a37d8..99fdede 100644 --- a/tests/math/mod.rs +++ b/tests/math/mod.rs @@ -18,3 +18,4 @@ pub mod find_the_pivot_integer_test; pub mod next_greater_numerically_balanced_number_test; pub mod number_of_burgers_with_no_waste_of_ingredients_test; pub mod maximum_students_taking_exam_test; +pub mod day_of_the_week_test;