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 7f8b0a1

Browse files
Merge pull request youngyangyang04#2481 from Baiye959/master
添加kama54替换数字 Java 版本 解法二
2 parents 665a5a6 + e4ebc6b commit 7f8b0a1

File tree

1 file changed

+37
-1
lines changed

1 file changed

+37
-1
lines changed

‎problems/kama54.替换数字.md‎

Lines changed: 37 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -142,7 +142,7 @@ for (int i = 0; i < a.size(); i++) {
142142
### C:
143143

144144
### Java:
145-
145+
解法一
146146
```java
147147
import java.util.Scanner;
148148

@@ -160,6 +160,42 @@ class Main {
160160
}
161161
}
162162
```
163+
解法二
164+
```java
165+
// 为了还原题目本意,先把原数组复制到扩展长度后的新数组,然后不再使用原数组、原地对新数组进行操作。
166+
import java.util.*;
167+
168+
public class Main {
169+
public static void main(String[] args) {
170+
Scanner sc = new Scanner(System.in);
171+
String s = sc.next();
172+
int len = s.length();
173+
for (int i = 0; i < s.length(); i++) {
174+
if (s.charAt(i) >= 0 && s.charAt(i) <= '9') {
175+
len += 5;
176+
}
177+
}
178+
179+
char[] ret = new char[len];
180+
for (int i = 0; i < s.length(); i++) {
181+
ret[i] = s.charAt(i);
182+
}
183+
for (int i = s.length() - 1, j = len - 1; i >= 0; i--) {
184+
if ('0' <= ret[i] && ret[i] <= '9') {
185+
ret[j--] = 'r';
186+
ret[j--] = 'e';
187+
ret[j--] = 'b';
188+
ret[j--] = 'm';
189+
ret[j--] = 'u';
190+
ret[j--] = 'n';
191+
} else {
192+
ret[j--] = ret[i];
193+
}
194+
}
195+
System.out.println(ret);
196+
}
197+
}
198+
```
163199

164200
### Go:
165201
````go

0 commit comments

Comments
(0)

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