728x90
1732 - Find the Highest Altitude

풀이
시작 고도 = 0 / 현재 고도(`cur`) += `gain[i]`
altitude[i + 1] = altitude[i] + gain[i]
코드
class Solution {
public int largestAltitude(int[] gain) {
int cur = 0;
int max = 0;
for (int g : gain) {
cur += g;
max = Math.max(max, cur);
}
return max;
}
}
724 - Find Pivot Index


풀이
피벗 인덱스: 해당 인덱스 바로 왼쪽에 있는 모든 숫자의 합 == 해당 인덱스 바로 오른쪽에 있는 모든 숫자의 합
-> 전체 합(`totalSum`) - 왼쪽 합(`leftSum`) - `nums[i]` = 오른쪽 합
코드
class Solution {
public int pivotIndex(int[] nums) {
int total = 0;
for (int n : nums) {
total += n;
}
int ltSum = 0;
for (int i = 0; i < nums.length; i++) {
if (ltSum == (total - ltSum - nums[i])) return i;
ltSum += nums[i];
}
return -1;
}
}
출처
LeetCode 75 - Study Plan - LeetCode
Ace Coding Interview with 75 Qs
leetcode.com
728x90
반응형