File tree 3 files changed +57
-2
lines changed
solution/0200-0299/0258.Add Digits
3 files changed +57
-2
lines changed Original file line number Diff line number Diff line change @@ -55,7 +55,6 @@ class Solution:
55
55
56
56
``` java
57
57
class Solution {
58
-
59
58
public int addDigits (int num ) {
60
59
return (num - 1 ) % 9 + 1 ;
61
60
}
@@ -85,6 +84,32 @@ func addDigits(num int) int {
85
84
}
86
85
```
87
86
87
+ ### ** Rust**
88
+
89
+ ``` rust
90
+ impl Solution {
91
+ pub fn add_digits (num : i32 ) -> i32 {
92
+ if num < 10 {
93
+ return num ;
94
+ }
95
+ Self :: add_digits (
96
+ num . to_string ()
97
+ . chars ()
98
+ . map (| c | c . to_string (). parse :: <i32 >(). unwrap ())
99
+ . sum :: <i32 >(),
100
+ )
101
+ }
102
+ }
103
+ ```
104
+
105
+ ``` rust
106
+ impl Solution {
107
+ pub fn add_digits (mut num : i32 ) -> i32 {
108
+ (num - 1 ) % 9 + 1
109
+ }
110
+ }
111
+ ```
112
+
88
113
### ** ...**
89
114
90
115
```
Original file line number Diff line number Diff line change @@ -51,7 +51,6 @@ class Solution:
51
51
52
52
``` java
53
53
class Solution {
54
-
55
54
public int addDigits (int num ) {
56
55
return (num - 1 ) % 9 + 1 ;
57
56
}
@@ -81,6 +80,32 @@ func addDigits(num int) int {
81
80
}
82
81
```
83
82
83
+ ### ** Rust**
84
+
85
+ ``` rust
86
+ impl Solution {
87
+ pub fn add_digits (num : i32 ) -> i32 {
88
+ if num < 10 {
89
+ return num ;
90
+ }
91
+ Self :: add_digits (
92
+ num . to_string ()
93
+ . chars ()
94
+ . map (| c | c . to_string (). parse :: <i32 >(). unwrap ())
95
+ . sum :: <i32 >(),
96
+ )
97
+ }
98
+ }
99
+ ```
100
+
101
+ ``` rust
102
+ impl Solution {
103
+ pub fn add_digits (mut num : i32 ) -> i32 {
104
+ (num - 1 ) % 9 + 1
105
+ }
106
+ }
107
+ ```
108
+
84
109
### ** ...**
85
110
86
111
```
Original file line number Diff line number Diff line change
1
+ impl Solution {
2
+ pub fn add_digits ( mut num : i32 ) -> i32 {
3
+ ( num - 1 ) % 9 + 1
4
+ }
5
+ }
You can’t perform that action at this time.
0 commit comments