Skip to content

Commit 726cc52

Browse files
committed
test: 2410 solution
py, c++, go, java
1 parent 72e7b07 commit 726cc52

File tree

4 files changed

+63
-20
lines changed

4 files changed

+63
-20
lines changed

problems/problems_2410/Solution.cpp

Lines changed: 24 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,38 @@
11
//go:build ignore
22
#include "cpp/common/Solution.h"
33

4-
54
using namespace std;
65
using json = nlohmann::json;
76

87
class Solution {
98
public:
10-
int matchPlayersAndTrainers(vector<int>& players, vector<int>& trainers) {
11-
9+
int matchPlayersAndTrainers(vector<int> &players, vector<int> &trainers) {
10+
sort(players.begin(), players.end());
11+
sort(trainers.begin(), trainers.end());
12+
int ans = 0;
13+
int m = players.size(), n = trainers.size();
14+
for (int i = 0, j = 0; i < m && j < n; ++j) {
15+
if (players[i] <= trainers[j]) {
16+
++ans;
17+
++i;
18+
}
1219
}
20+
return ans;
21+
}
1322
};
1423

1524
json leetcode::qubh::Solve(string input_json_values) {
16-
vector<string> inputArray;
17-
size_t pos = input_json_values.find('\n');
18-
while (pos != string::npos) {
19-
inputArray.push_back(input_json_values.substr(0, pos));
20-
input_json_values = input_json_values.substr(pos + 1);
21-
pos = input_json_values.find('\n');
22-
}
23-
inputArray.push_back(input_json_values);
25+
vector<string> inputArray;
26+
size_t pos = input_json_values.find('\n');
27+
while (pos != string::npos) {
28+
inputArray.push_back(input_json_values.substr(0, pos));
29+
input_json_values = input_json_values.substr(pos + 1);
30+
pos = input_json_values.find('\n');
31+
}
32+
inputArray.push_back(input_json_values);
2433

25-
Solution solution;
26-
vector<int> players = json::parse(inputArray.at(0));
27-
vector<int> trainers = json::parse(inputArray.at(1));
28-
return solution.matchPlayersAndTrainers(players, trainers);
34+
Solution solution;
35+
vector<int> players = json::parse(inputArray.at(0));
36+
vector<int> trainers = json::parse(inputArray.at(1));
37+
return solution.matchPlayersAndTrainers(players, trainers);
2938
}

problems/problems_2410/Solution.java

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,19 @@
77

88
public class Solution extends BaseSolution {
99
public int matchPlayersAndTrainers(int[] players, int[] trainers) {
10-
10+
Arrays.sort(players);
11+
Arrays.sort(trainers);
12+
int i = 0, m = players.length;
13+
int ans = 0;
14+
for (int train: trainers) {
15+
if (players[i] <= train) {
16+
++ans;
17+
if (++i == m) {
18+
return m;
19+
}
20+
}
21+
}
22+
return ans;
1123
}
1224

1325
@Override

problems/problems_2410/solution.go

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,24 @@ package problem2410
33
import (
44
"encoding/json"
55
"log"
6+
"sort"
67
"strings"
78
)
89

9-
func matchPlayersAndTrainers(players []int, trainers []int) int {
10-
10+
func matchPlayersAndTrainers(players []int, trainers []int) (ans int) {
11+
sort.Ints(players)
12+
sort.Ints(trainers)
13+
i, m := 0, len(players)
14+
for _, train := range trainers {
15+
if players[i] <= train {
16+
ans++
17+
i++
18+
if i == m {
19+
break
20+
}
21+
}
22+
}
23+
return
1124
}
1225

1326
func Solve(inputJsonValues string) any {

problems/problems_2410/solution.py

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,5 +7,14 @@ def solve(self, test_input=None):
77
return self.matchPlayersAndTrainers(*test_input)
88

99
def matchPlayersAndTrainers(self, players: List[int], trainers: List[int]) -> int:
10-
pass
11-
10+
players.sort()
11+
trainers.sort()
12+
ans = 0
13+
i = 0
14+
for train in trainers:
15+
if players[i] <= train:
16+
ans += 1
17+
i += 1
18+
if i == len(players):
19+
break
20+
return ans

0 commit comments

Comments
 (0)