Algorithm/Implementation (750) 썸네일형 리스트형 (C++) - LeetCode (easy) 1822. Sign of the Product of an Array https://leetcode.com/problems/sign-of-the-product-of-an-array/description/간단 구현 문제였습니다.📕 풀이방법📔 입력 및 초기화기호에 따른 결과값들을 곱한 정답 변수 productOfNums를 선언 후 1로 초기화해줍니다.📔 풀이과정nums의 원소를 순회하며 다음을 수행합니다.1. 현재 원소가 0이라면 productOfNums에는 0을 곱하게 되므로 0이 됩니다.2. 현재 원소가 음수라면 productOfNums에 -1을 곱하게 되므로 부호가 반대가 됩니다.📔 정답 출력 | 반환누적된 결과 productOfNums를 반환합니다.📕 Code📔 C++class Solution {public: int arraySign(vector& nu.. (C++) - LeetCode (easy) 1816. Truncate Sentence https://leetcode.com/problems/truncate-sentence/split을 구현하는 문제였습니다.📕 풀이방법📔 입력 및 초기화1. ' '를 구분자로 vector 을 반환하는 split을 구현해 vector words에 결과값을 저장합니다.2. 정답변수 ans를 선언합니다.📔 풀이과정k만큼 ans에 words의 원소를 붙여줍니다.📔 정답 출력 | 반환 ans를 반환합니다.📕 Code📔 C++class Solution {public: vector split(string input) { vector words; stringstream ss(input); string tmp; while(getline(ss, tmp, ' ')) { words... (C++) - LeetCode (easy) 1805. Number of Different Integers in a String https://leetcode.com/problems/determine-color-of-a-chessboard-square/구현 문제였습니다.📕 풀이방법📔 입력 및 초기화1 indexing을 위해 9x9의 bool형 2차원 vector boards를 선언 해줍니다.2. boards의 색을 칠하기 위해 color를 선언해 white(true)로 초기화해줍니다.3. 2차원 for loop를 수행하며 9x9에 색을 칠해줍니다. row가 바뀔때는 가장 마지막 color의 반대로 다시 초기화해줍니다.📔 풀이과정각 좌표를 2차원 array 접근을 위한 좌표로 변환합니다.1. 행을 뜻하는 r을 선언해 coordinates의 0번째는 alphabat이 므로 int형으로 변환해 1을 더한 값으로 저장합니다.2. 열.. (C++) - LeetCode (easy) 1805. Number of Different Integers in a String https://leetcode.com/problems/number-of-different-integers-in-a-string/📕 풀이방법📔 입력 및 초기화word 길이 sz, 정수 문자열 intWord, 정수 문자열을 key로 빈도수를 value로 intFrequencyMap을 선언후 적절히 초기화해줍니다.📔 풀이과정word의 원소를 순회하며 다음을 진행합니다.1. i가 sz미만이고 현재 문자가 숫자인 동안 while loop를 수행하며 intWord에 현재 문자를 우측 뒤에 붙여주고 i를 증가시켜 줍니다.2. intWord에 길이가 존재한다면 앞에 0을 제거한 trimWord값을 key로 intFrequencyMap에서 찾아 빈도수를 높여줍니다. 그 후 intWord를 다시 빈 문자열로 초기화해.. (C++) - LeetCode (easy) 1796. Second Largest Digit in a String https://leetcode.com/problems/maximum-ascending-subarray-sum/구현 문제였습니다.📕 풀이방법📔 입력 및 초기화이전 숫자를 저장할 변수 piv와 오르막 구간의 누적합의 최댓값 maxSum과 한 구간의 오르막 구간 누적합 sum을 선언한 후 모두 nums[0]번째 값으로 초기화합니다.📔 풀이과정1. 1번째 부터 nums.size() - 1 까지 for loop를 수행하며 다음을 진행합니다. 1-1. 이전 값 piv보다 현재 값이 크다면 오르막 구간이므로 sum에 현재 값을 누적해 줍니다. 1-2. 이전 값 piv가 현재 값 이상이라면 평지 혹은 내리막 구간이므로 현재까지의 sum값과 maxSum 중 최댓값을 maxSum에 저장합니다. 이후 sum은 다시.. (C++) - LeetCode (easy) 1784. Check if Binary String Has at Most One Segment of Ones https://leetcode.com/problems/check-if-binary-string-has-at-most-one-segment-of-ones/📕 풀이방법📔 입력 및 초기화연속된 1의 구간 개수 segment를 선언 후 0으로 초기화해줍니다.📔 풀이과정s의 원소를 순회하며 다음을 수행합니다.1. 현재 원소가 '1'이라면 연속된 1만큼 index를 증가시켜주고2. 해당 구간을 파악했으므로 segment를 1 더해줍니다.📔 정답출력segment 개수가 1이하인지 여부를 반환합니다.📕 Code📔 C++class Solution {public: bool checkOnesSegment(string s) { int segment = 0; for(int i = 0; .. (C++) - LeetCode (easy) 1773. Count Items Matching a Rule https://leetcode.com/problems/count-items-matching-a-rule/📕 풀이방법📔 입력 및 초기화정답 변수 matches를 선언해 0으로 초기화해줍니다.📔 풀이과정items의 원소를 순회하며 다음을 수행합니다.1. ruleKey에 맞는 index를 찾아 idx에 저장해줍니다.2. 해당 item의 idx번째가 ruleValue와 같은지 검사합니다. 같다면 matches를 1씩 증가시켜줍니다.📔 정답 출력 | 반환matches를 반환합니다.📕 Code📔 C++class Solution {public: int getIndexToCompare(string ruleKey) { if (ruleKey == "type") return 0; i.. (C++) - LeetCode (easy) 1758. Minimum Changes To Make Alternating Binary String https://leetcode.com/problems/minimum-changes-to-make-alternating-binary-string/📕 풀이방법📔 입력 및 초기화1. 0101... 의 pattern1을 만들기 위해 바꿀 문자 수 pattern1Altered와 1010...의 pattern2를 만들기 위해 바꿀 문자 수 pattern2Altered를 선언 후 0으로 초기화해줍니다.2. length를 선언해 s의 size값을 저장해줍니다.📔 풀이과정pattern1, pattern2를 length길이만큼 만들어 저장해줍니다.s의 원소를 순회하며 pattern1나 pattern2와 다른 문자가 있다면 그 값을 ~altered에 저장해줍니다.📔 정답 출력 | 반환pattern1과 pattern2.. 이전 1 ··· 25 26 27 28 29 30 31 ··· 94 다음