Mock Interview: Apple #1
1808 ワード
Missing Number
class Solution {
public int missingNumber(int[] nums) {
int total = 0;
int result = 0;
for (int i = 0; i < nums.length; i++) {
total += i + 1;
result += nums[i];
}
return total - result;
}
}
Runtime: 0 ms, faster than 100.00% of Java online submissions for Missing Number.Memory Usage: 39.7 MB, less than 21.37% of Java online submissions for Missing Number.
1~nを加えて、値段も加算します.
最後に差異を返す方法
Count and Say
class Solution {
public String countAndSay(int n) {
//개 거지같은 문제네요
if (n == 1) return "1";
String s = "1";
for (int i = 1; i < n; i++) {
s = helper(s);
}
return s;
}
private String helper(String s) {
StringBuilder sb = new StringBuilder();
char cur = s.charAt(0);
int i = 1;
int count = 1;
while (i < s.length()) {
char c = s.charAt(i);
if (c != cur) {
sb.append(count).append(cur);
count = 1;
cur = s.charAt(i);
} else {
count++;
}
i++;
}
sb.append(count).append(cur);
return sb.toString();
}
}
Runtime: 1 ms, faster than 99.89% of Java online submissions for Count and Say.Memory Usage: 36.6 MB, less than 71.01% of Java online submissions for Count and Say.
再帰で答えをnに返す
耳の中でsbを使うのは弦を使う時より速いです.
whileはドアで最後まで見てcharが前と同じならcountを上げてそうでなければ次へ飛びます~~
Reference
この問題について(Mock Interview: Apple #1), 我々は、より多くの情報をここで見つけました https://velog.io/@jwade/Mock-Interview-Apple-1テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol