Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 21b82a7

Browse files
committed
feat: add solutions to lc problems: No.2544~2546
- No.2544.Alternating Digit Sum - No.2545.Sort the Students by Their Kth Score - No.2546.Apply Bitwise Operations to Make Strings Equal
1 parent 97aec58 commit 21b82a7

File tree

14 files changed

+278
-0
lines changed

14 files changed

+278
-0
lines changed

‎solution/2500-2599/2544.Alternating Digit Sum/README.md‎

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -126,6 +126,53 @@ func alternateDigitSum(n int) int {
126126
}
127127
```
128128

129+
### **TypeScript**
130+
131+
```ts
132+
function alternateDigitSum(n: number): number {
133+
let ans = 0;
134+
let sign = 1;
135+
while (n) {
136+
ans += (n % 10) * sign;
137+
sign = -sign;
138+
n = Math.floor(n / 10);
139+
}
140+
return ans * -sign;
141+
}
142+
```
143+
144+
### **Rust**
145+
146+
```rust
147+
impl Solution {
148+
pub fn alternate_digit_sum(mut n: i32) -> i32 {
149+
let mut ans = 0;
150+
let mut sign = 1;
151+
while n != 0 {
152+
ans += (n % 10) * sign;
153+
sign = -sign;
154+
n /= 10;
155+
}
156+
ans * -sign
157+
}
158+
}
159+
```
160+
161+
### **C**
162+
163+
```c
164+
int alternateDigitSum(int n) {
165+
int ans = 0;
166+
int sign = 1;
167+
while (n) {
168+
ans += (n % 10) * sign;
169+
sign = -sign;
170+
n /= 10;
171+
}
172+
return ans * -sign;
173+
}
174+
```
175+
129176
### **...**
130177
131178
```

‎solution/2500-2599/2544.Alternating Digit Sum/README_EN.md‎

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -118,6 +118,53 @@ func alternateDigitSum(n int) int {
118118
}
119119
```
120120

121+
### **TypeScript**
122+
123+
```ts
124+
function alternateDigitSum(n: number): number {
125+
let ans = 0;
126+
let sign = 1;
127+
while (n) {
128+
ans += (n % 10) * sign;
129+
sign = -sign;
130+
n = Math.floor(n / 10);
131+
}
132+
return ans * -sign;
133+
}
134+
```
135+
136+
### **Rust**
137+
138+
```rust
139+
impl Solution {
140+
pub fn alternate_digit_sum(mut n: i32) -> i32 {
141+
let mut ans = 0;
142+
let mut sign = 1;
143+
while n != 0 {
144+
ans += (n % 10) * sign;
145+
sign = -sign;
146+
n /= 10;
147+
}
148+
ans * -sign
149+
}
150+
}
151+
```
152+
153+
### **C**
154+
155+
```c
156+
int alternateDigitSum(int n) {
157+
int ans = 0;
158+
int sign = 1;
159+
while (n) {
160+
ans += (n % 10) * sign;
161+
sign = -sign;
162+
n /= 10;
163+
}
164+
return ans * -sign;
165+
}
166+
```
167+
121168
### **...**
122169
123170
```
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
int alternateDigitSum(int n) {
2+
int ans = 0;
3+
int sign = 1;
4+
while (n) {
5+
ans += (n % 10) * sign;
6+
sign = -sign;
7+
n /= 10;
8+
}
9+
return ans * -sign;
10+
}
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
impl Solution {
2+
pub fn alternate_digit_sum(mut n: i32) -> i32 {
3+
let mut ans = 0;
4+
let mut sign = 1;
5+
while n != 0 {
6+
ans += (n % 10) * sign;
7+
sign = -sign;
8+
n /= 10;
9+
}
10+
ans * -sign
11+
}
12+
}
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
function alternateDigitSum(n: number): number {
2+
let ans = 0;
3+
let sign = 1;
4+
while (n) {
5+
ans += (n % 10) * sign;
6+
sign = -sign;
7+
n = Math.floor(n / 10);
8+
}
9+
return ans * -sign;
10+
}

‎solution/2500-2599/2545.Sort the Students by Their Kth Score/README.md‎

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -108,6 +108,26 @@ func sortTheStudents(score [][]int, k int) [][]int {
108108
}
109109
```
110110

111+
### **TypeScript**
112+
113+
```ts
114+
function sortTheStudents(score: number[][], k: number): number[][] {
115+
return score.sort((a, b) => b[k] - a[k]);
116+
}
117+
```
118+
119+
### **Rust**
120+
121+
```rust
122+
impl Solution {
123+
pub fn sort_the_students(mut score: Vec<Vec<i32>>, k: i32) -> Vec<Vec<i32>> {
124+
let k = k as usize;
125+
score.sort_by(|a, b| b[k].cmp(&a[k]));
126+
score
127+
}
128+
}
129+
```
130+
111131
### **...**
112132

113133
```

‎solution/2500-2599/2545.Sort the Students by Their Kth Score/README_EN.md‎

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -88,6 +88,26 @@ func sortTheStudents(score [][]int, k int) [][]int {
8888
}
8989
```
9090

91+
### **TypeScript**
92+
93+
```ts
94+
function sortTheStudents(score: number[][], k: number): number[][] {
95+
return score.sort((a, b) => b[k] - a[k]);
96+
}
97+
```
98+
99+
### **Rust**
100+
101+
```rust
102+
impl Solution {
103+
pub fn sort_the_students(mut score: Vec<Vec<i32>>, k: i32) -> Vec<Vec<i32>> {
104+
let k = k as usize;
105+
score.sort_by(|a, b| b[k].cmp(&a[k]));
106+
score
107+
}
108+
}
109+
```
110+
91111
### **...**
92112

93113
```
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
impl Solution {
2+
pub fn sort_the_students(mut score: Vec<Vec<i32>>, k: i32) -> Vec<Vec<i32>> {
3+
let k = k as usize;
4+
score.sort_by(|a, b| b[k].cmp(&a[k]));
5+
score
6+
}
7+
}
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
function sortTheStudents(score: number[][], k: number): number[][] {
2+
return score.sort((a, b) => b[k] - a[k]);
3+
}

‎solution/2500-2599/2546.Apply Bitwise Operations to Make Strings Equal/README.md‎

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -101,6 +101,45 @@ func makeStringsEqual(s string, target string) bool {
101101
}
102102
```
103103

104+
### **TypeScript**
105+
106+
```ts
107+
function makeStringsEqual(s: string, target: string): boolean {
108+
return s.includes('1') === target.includes('1');
109+
}
110+
```
111+
112+
### **Rust**
113+
114+
```rust
115+
impl Solution {
116+
pub fn make_strings_equal(s: String, target: String) -> bool {
117+
s.contains('1') == target.contains('1')
118+
}
119+
}
120+
```
121+
122+
### **C**
123+
124+
```c
125+
bool makeStringsEqual(char *s, char *target) {
126+
int count = 0;
127+
for (int i = 0; s[i]; i++) {
128+
if (s[i] == '1') {
129+
count++;
130+
break;
131+
}
132+
}
133+
for (int i = 0; target[i]; i++) {
134+
if (target[i] == '1') {
135+
count++;
136+
break;
137+
}
138+
}
139+
return !(count & 1);
140+
}
141+
```
142+
104143
### **...**
105144
106145
```

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /