상세 컨텐츠

본문 제목

1996. The Number of Weak Characters in the Game

Developer/LEETCODE

by cepiloth 2021. 9. 5. 21:03

본문

728x90
반응형

https://leetcode.com/problems/the-number-of-weak-characters-in-the-game/

난이도 : medium

문제 

게임 내 약한 캐릭터의 수를 반환하여라.

 

오전에 leetcode Context를 하다가 해당 문제 보고 도저희 갈피를 잡지 못해서 멘탈이 나갔다. 일단 이중 벡터로 들어오니 정렬을 하면 0 앞에 있는 숫자대로 arr [0][0] 오름차순으로 정렬이 될 것이니 arr [0][1] 값만 확인해서 크다 작다만 분류하면 풀리지 않을까 하면서 고민만 하다가 결국 알고리즘 울렁증이 발생해서 포기했다.

지금 정신 차리고 Discussion을 확인해보니 ㅠㅠ 너무 간단하게 푸는 사람이 많아서 속상하다. 내공을 기르자 기르자.ㅠㅠ

코드

COMP 함수가 인상적이었다. 첫 번째 값이 같으면 두 번째 값으로 비교하는 하여서 정렬을 하였다. 이후 배열의 마지막 인덱스부터 시작해서 차이를 업데이트하는 식으로 풀었다. 어떻게 하면 이렇게 쉽게 접근하는 사고를 가질 수 있을까?

class Solution {
public:

     static bool comp(vector<int> &a, vector<int> &b)
     {
          if (a[0] == b[0])
          {
               return a[1] > b[1];
          }
          return a[0] < b[0];
     }
    
     int numberOfWeakCharacters(vector<vector<int>> &properties)
     {
          sort(properties.begin(), properties.end(), comp); //sorting the array
          int mtn = INT_MIN;                                //max till now while moving from right
          int ans = 0;

          for (int i = properties.size() - 1; i >= 0; i--)
          {
               if (properties[i][1] < mtn) // if the second parameter is also less increase the ans
                    ans++;
               mtn = max(mtn, properties[i][1]);
          }
          return ans;
     }
};

 

아아아 아아아아 

728x90
반응형

'Developer > LEETCODE' 카테고리의 다른 글

409. Longest Palindrome  (0) 2021.09.05
819. Most Common Word  (0) 2021.09.05
1995. Count Special Quadruplets  (0) 2021.09.05
819. Most Common Word  (0) 2021.09.04
561. Array Partition I  (0) 2021.09.04

관련글 더보기

댓글 영역