Skip to content

Commit 5f99195

Browse files
authored
feat: add rust solution to lc problem: No.2644 (doocs#1119)
1 parent e56b971 commit 5f99195

File tree

3 files changed

+79
-0
lines changed

3 files changed

+79
-0
lines changed

solution/2600-2699/2644.Find the Maximum Divisibility Score/README.md

+28
Original file line numberDiff line numberDiff line change
@@ -186,6 +186,34 @@ function maxDivScore(nums: number[], divisors: number[]): number {
186186
}
187187
```
188188

189+
### **Rust**
190+
191+
```rust
192+
impl Solution {
193+
pub fn max_div_score(nums: Vec<i32>, divisors: Vec<i32>) -> i32 {
194+
let mut ans = divisors[0];
195+
let mut mx = 0;
196+
197+
for &div in &divisors {
198+
let mut cnt = 0;
199+
200+
for &n in &nums {
201+
if n % div == 0 {
202+
cnt += 1;
203+
}
204+
}
205+
206+
if cnt > mx || (cnt >= mx && div < ans) {
207+
mx = cnt;
208+
ans = div;
209+
}
210+
}
211+
212+
ans
213+
}
214+
}
215+
```
216+
189217
### **...**
190218

191219
```

solution/2600-2699/2644.Find the Maximum Divisibility Score/README_EN.md

+28
Original file line numberDiff line numberDiff line change
@@ -165,6 +165,34 @@ function maxDivScore(nums: number[], divisors: number[]): number {
165165
}
166166
```
167167

168+
### **Rust**
169+
170+
```rust
171+
impl Solution {
172+
pub fn max_div_score(nums: Vec<i32>, divisors: Vec<i32>) -> i32 {
173+
let mut ans = divisors[0];
174+
let mut mx = 0;
175+
176+
for &div in &divisors {
177+
let mut cnt = 0;
178+
179+
for &n in &nums {
180+
if n % div == 0 {
181+
cnt += 1;
182+
}
183+
}
184+
185+
if cnt > mx || (cnt >= mx && div < ans) {
186+
mx = cnt;
187+
ans = div;
188+
}
189+
}
190+
191+
ans
192+
}
193+
}
194+
```
195+
168196
### **...**
169197

170198
```
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
impl Solution {
2+
pub fn max_div_score(nums: Vec<i32>, divisors: Vec<i32>) -> i32 {
3+
let mut ans = divisors[0];
4+
let mut mx = 0;
5+
6+
for &div in &divisors {
7+
let mut cnt = 0;
8+
9+
for &n in &nums {
10+
if n % div == 0 {
11+
cnt += 1;
12+
}
13+
}
14+
15+
if cnt > mx || (cnt >= mx && div < ans) {
16+
mx = cnt;
17+
ans = div;
18+
}
19+
}
20+
21+
ans
22+
}
23+
}

0 commit comments

Comments
 (0)