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 ff32fdd

Browse files
feat: add solutions to lc problem: No.3379 (doocs#3847)
1 parent 2ee3b36 commit ff32fdd

File tree

7 files changed

+146
-6
lines changed

7 files changed

+146
-6
lines changed

‎solution/3300-3399/3379.Transformed Array/README.md‎

Lines changed: 50 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -84,25 +84,72 @@ edit_url: https://github.com/doocs/leetcode/edit/main/solution/3300-3399/3379.Tr
8484
#### Python3
8585

8686
```python
87-
87+
class Solution:
88+
def constructTransformedArray(self, nums: List[int]) -> List[int]:
89+
ans = []
90+
n = len(nums)
91+
for i, x in enumerate(nums):
92+
ans.append(nums[(i + x + n) % n] if x else 0)
93+
return ans
8894
```
8995

9096
#### Java
9197

9298
```java
93-
99+
class Solution {
100+
public int[] constructTransformedArray(int[] nums) {
101+
int n = nums.length;
102+
int[] ans = new int[n];
103+
for (int i = 0; i < n; ++i) {
104+
ans[i] = nums[i] != 0 ? nums[(i + nums[i] % n + n) % n] : 0;
105+
}
106+
return ans;
107+
}
108+
}
94109
```
95110

96111
#### C++
97112

98113
```cpp
99-
114+
class Solution {
115+
public:
116+
vector<int> constructTransformedArray(vector<int>& nums) {
117+
int n = nums.size();
118+
vector<int> ans(n);
119+
for (int i = 0; i < n; ++i) {
120+
ans[i] = nums[i] ? nums[(i + nums[i] % n + n) % n] : 0;
121+
}
122+
return ans;
123+
}
124+
};
100125
```
101126
102127
#### Go
103128
104129
```go
130+
func constructTransformedArray(nums []int) []int {
131+
n := len(nums)
132+
ans := make([]int, n)
133+
for i, x := range nums {
134+
if x != 0 {
135+
ans[i] = nums[(i+x%n+n)%n]
136+
}
137+
}
138+
return ans
139+
}
140+
```
105141

142+
#### TypeScript
143+
144+
```ts
145+
function constructTransformedArray(nums: number[]): number[] {
146+
const n = nums.length;
147+
const ans: number[] = [];
148+
for (let i = 0; i < n; ++i) {
149+
ans.push(nums[i] ? nums[(i + (nums[i] % n) + n) % n] : 0);
150+
}
151+
return ans;
152+
}
106153
```
107154

108155
<!-- tabs:end -->

‎solution/3300-3399/3379.Transformed Array/README_EN.md‎

Lines changed: 50 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -82,25 +82,72 @@ For each index <code>i</code> (where <code>0 &lt;= i &lt; nums.length</code>), p
8282
#### Python3
8383

8484
```python
85-
85+
class Solution:
86+
def constructTransformedArray(self, nums: List[int]) -> List[int]:
87+
ans = []
88+
n = len(nums)
89+
for i, x in enumerate(nums):
90+
ans.append(nums[(i + x + n) % n] if x else 0)
91+
return ans
8692
```
8793

8894
#### Java
8995

9096
```java
91-
97+
class Solution {
98+
public int[] constructTransformedArray(int[] nums) {
99+
int n = nums.length;
100+
int[] ans = new int[n];
101+
for (int i = 0; i < n; ++i) {
102+
ans[i] = nums[i] != 0 ? nums[(i + nums[i] % n + n) % n] : 0;
103+
}
104+
return ans;
105+
}
106+
}
92107
```
93108

94109
#### C++
95110

96111
```cpp
97-
112+
class Solution {
113+
public:
114+
vector<int> constructTransformedArray(vector<int>& nums) {
115+
int n = nums.size();
116+
vector<int> ans(n);
117+
for (int i = 0; i < n; ++i) {
118+
ans[i] = nums[i] ? nums[(i + nums[i] % n + n) % n] : 0;
119+
}
120+
return ans;
121+
}
122+
};
98123
```
99124
100125
#### Go
101126
102127
```go
128+
func constructTransformedArray(nums []int) []int {
129+
n := len(nums)
130+
ans := make([]int, n)
131+
for i, x := range nums {
132+
if x != 0 {
133+
ans[i] = nums[(i+x%n+n)%n]
134+
}
135+
}
136+
return ans
137+
}
138+
```
103139

140+
#### TypeScript
141+
142+
```ts
143+
function constructTransformedArray(nums: number[]): number[] {
144+
const n = nums.length;
145+
const ans: number[] = [];
146+
for (let i = 0; i < n; ++i) {
147+
ans.push(nums[i] ? nums[(i + (nums[i] % n) + n) % n] : 0);
148+
}
149+
return ans;
150+
}
104151
```
105152

106153
<!-- tabs:end -->
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
class Solution {
2+
public:
3+
vector<int> constructTransformedArray(vector<int>& nums) {
4+
int n = nums.size();
5+
vector<int> ans(n);
6+
for (int i = 0; i < n; ++i) {
7+
ans[i] = nums[i] ? nums[(i + nums[i] % n + n) % n] : 0;
8+
}
9+
return ans;
10+
}
11+
};
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
func constructTransformedArray(nums []int) []int {
2+
n := len(nums)
3+
ans := make([]int, n)
4+
for i, x := range nums {
5+
if x != 0 {
6+
ans[i] = nums[(i+x%n+n)%n]
7+
}
8+
}
9+
return ans
10+
}
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
class Solution {
2+
public int[] constructTransformedArray(int[] nums) {
3+
int n = nums.length;
4+
int[] ans = new int[n];
5+
for (int i = 0; i < n; ++i) {
6+
ans[i] = nums[i] != 0 ? nums[(i + nums[i] % n + n) % n] : 0;
7+
}
8+
return ans;
9+
}
10+
}
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
class Solution:
2+
def constructTransformedArray(self, nums: List[int]) -> List[int]:
3+
ans = []
4+
n = len(nums)
5+
for i, x in enumerate(nums):
6+
ans.append(nums[(i + x + n) % n] if x else 0)
7+
return ans
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
function constructTransformedArray(nums: number[]): number[] {
2+
const n = nums.length;
3+
const ans: number[] = [];
4+
for (let i = 0; i < n; ++i) {
5+
ans.push(nums[i] ? nums[(i + (nums[i] % n) + n) % n] : 0);
6+
}
7+
return ans;
8+
}

0 commit comments

Comments
(0)

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