DEV Community

Discussion on: Solution: Maximum Points You Can Obtain from Cards

Collapse
 
rohithv07 profile image
Rohith V

Sharing my Java Solution

class Solution {
    public int maxScore(int[] cardPoints, int k) {
        int length = cardPoints.length;
         if (k == length) {
            int sum = 0;
            for (int number : cardPoints) {
            sum += number;
        }
            return sum;
        }
        int leftSum = 0;
        int rightSum = 0;
        for (int i=0; i<k; i++) {
            leftSum += cardPoints[i];
        }
        int maxSum = leftSum;
        for (int i=0; i<k; i++) {
            leftSum -= cardPoints[k - i - 1];
            rightSum += cardPoints[length - i - 1];
            maxSum = Math.max(maxSum, leftSum + rightSum);
        }
        return maxSum;
    }
}
Enter fullscreen mode Exit fullscreen mode

GitHub logo Rohithv07 / LeetCodeTopInterviewQuestions

Leetcode Top Interview questions discussed in Leetcode. https://leetcode.com/explore/interview/card/top-interview-questions