LeetCode #220 ContainsDuplicate3. Algorithm,알고리즘,LeetCode,Codefights,CodeSignal,코드파이트,코드시그널,예제,문제해결능력,example,c++,java,재귀,recursive,datastructure,techinterview,coding,코딩인터뷰,기술면접
2번과 비슷하여 쉽게 풀렸지만, abs 절대값 함수를 쓰는데 int 범위를 넘는 값이 예외 케이스를 만들어서 문법을 보느라 오래걸렸다.
31 / 41 test case
[2147483647,-2147483647]
1
2147483647
이 케이스인데,
예를 들어 abs(-2147483647) 이라 하면 안돼고, abs((long)-2147483647) 이런식으로 형변환 후 접근해야한다. 후..
It was easy, but not that good performance. It's kinda similar with #2. So need to use map,, later. Anyway, it took long time cuz of abs function num type. I used long long int for abs, but return weird value.
31 / 41 test case
[2147483647,-2147483647]
1
2147483647
this case,
e.g. abs(-2147483647) it's uncorrect, we need to type conversion first like this... wf.. abs((long)-2147483647)
LeetCode #219
Q.
Given an array of integers, find out whether there are two distinct indices i and j in the array such that the absolute difference between nums[i] and nums[j] is at most t and the absolute difference between i and j is at most k.
주어진 정수배열에서, 떨어져있는 인덱스 i 와 j 값의 차이가 nums[i] nums[j] 최대 t 만큼 차이나고, 인덱스 자체의 차이는 k 만큼 차이나는 것이 있는지 찾아보아라. (k 는 index 차이의 한계점, t 는 값의 한계점)
e.g.
Example 1:
Input: nums = [1,2,3,1], k = 3, t = 0
Output: true
Example 2:
Input: nums = [1,0,1,1], k = 1, t = 2
Output: true
Example 3:
Input: nums = [1,5,9,1,5,9], k = 2, t = 3
Output: false
//Process 1
//1. Input integer vector, integer k and integer t
//2. Iterate from begin to the end
// 2.1. Check if value[i] has abs diff t ranging in index k
// 2.1.1. if so -> true
//3. return answer
//처리과정 1
//1. 정수배열과 정수 k, 정수 t 를 입력받는다.
//2. 시작부터 끝까지 반복한다.
// 2.1. 인덱스 i 의 값이, 인덱스 i 에서 k 범위 내의 값과, 값이 t 차이 내에 해당하는 것이 있는지 확인한다.
// 2.1.1. 있으면 - true
//3. 결과 반환한다.
Code.. lemme see code!!!
코드.. 코드를 보자!!!
// First 1
class Solution {
public:
bool containsNearbyAlmostDuplicate(vector<int>& nums, int k, int t) {
bool answer = false;
for (int i = 0; i < nums.size(); ++i)
{
for (int j = i+1; j < nums.size() && j <= i+k; ++j)
{
if (abs((long)nums[i] - (long)nums[j]) <= t)
{
return true;
}
// int64_t temp = (long)nums[i] - (long)nums[j];
// if (temp < 0)
// {
// temp = (-temp);
// }
// if (temp <= t)
// {
// cout << temp << endl;
// return true;
// }
}
}
return answer;
}
};
Something else you might like...?
2019/01/16 - [Algorithm/Leet Code] - LeetCode #217 ContainsDuplicate. Algorithm,알고리즘,LeetCode,Codefights,CodeSignal,코드파이트,코드시그널,예제,문제해결능력,example,c++,java,재귀,recursive,datastructure,techinterview,coding,코딩인터뷰,기술면접
2019/01/21 - [Algorithm/Leet Code] - LeetCode #219 ContainsDuplicate2. Algorithm,알고리즘,LeetCode,Codefights,CodeSignal,코드파이트,코드시그널,예제,문제해결능력,example,c++,java,재귀,recursive,datastructure,techinterview,coding,코딩인터뷰,기술면접
2018/10/19 - [Programming/Design Pattern ] - Design pattern - Prototype (디자인패턴 - 프로토타입) / Java C++ C#
2019/01/12 - [Algorithm/Code Fights (Code Signal)] - Aracade Intro #60 sudoku. Algorithm,알고리즘,Codefights,CodeSignal,코드파이트,코드시그널,예제,문제해결능력,example,c++,java,재귀,recursive
2019/01/12 - [Algorithm/Code Fights (Code Signal)] - Aracade Intro #59 spiralNumbers. Algorithm,알고리즘,Codefights,CodeSignal,코드파이트,코드시그널,예제,문제해결능력,example,c++,java,재귀,recursive
2019/01/08 - [Algorithm/Code Fights (Code Signal)] - Aracade Intro #58 messageFromBinaryCode. Algorithm,알고리즘,Codefights,CodeSignal,코드파이트,코드시그널,예제,문제해결능력,example,c++,java,재귀,recursive
2019/01/07 - [Algorithm/Code Fights (Code Signal)] - Aracade Intro #57 fileNaming. Algorithm,알고리즘,Codefights,CodeSignal,코드파이트,코드시그널,예제,문제해결능력,example,c++,java,재귀,recursive
2019/01/04 - [Algorithm/Code Fights (Code Signal)] - Aracade Intro #56 digitsProduct. Algorithm, 알고리즘, Codefights, CodeSignal, 코드파이트, 코드시그널, 예제,문제해결능력,example, c++ java c# scalar
2019/01/04 - [Algorithm/Code Fights (Code Signal)] - Aracade Intro #55 differentSquares. Algorithm, 알고리즘, Codefights, CodeSignal, 코드파이트, 코드시그널, 예제,문제해결능력,example, c++ java c# scalar
2019/01/02 - [Algorithm/Code Fights (Code Signal)] - Aracade Intro #54 sumUpNumbers. Algorithm, 알고리즘, Codefights, CodeSignal, 코드파이트, 코드시그널, 예제,문제해결능력,example, c++ java c# scalar
2019/01/02 - [Algorithm/Code Fights (Code Signal)] - Aracade Intro #53 validTime. Algorithm, 알고리즘, Codefights, CodeSignal, 코드파이트, 코드시그널, 예제,문제해결능력,example, c++ java c# scalar
2019/01/02 - [Algorithm/Code Fights (Code Signal)] - Aracade Intro #52 longestWord. Algorithm, 알고리즘, Codefights, CodeSignal, 코드파이트, 코드시그널, 예제, example, c++ java c# scalar
2019/01/01 - [Algorithm/Code Fights (Code Signal)] - Aracade Intro #51 deleteDigit. Algorithm, 알고리즘, Codefights, CodeSignal, 코드파이트, 코드시그널, 예제, example, c++ java c# scalar
2018/12/31 - [Algorithm/Code Fights (Code Signal)] - Aracade Intro #50 chessKnight. Algorithm, 알고리즘, Codefights, CodeSignal, 코드파이트, 코드시그널, 예제, example, c++ java c# scalar
2018/12/28 - [Programming/Software Architecture] - Perfecting OO's Small Classes and Short Methods. 완벽한 객체지향의 작은 클래스와 짧은 메소드, Book:ThoughtWorks Anthology, Java,cpp,자바,oop,좋은코드,객체지향프로그래밍 - (#9, Tell, Don't Ask)
2018/12/26 - [Programming/Software Architecture] - Perfecting OO's Small Classes and Short Methods. 완벽한 객체지향의 작은 클래스와 짧은 메소드, Book:ThoughtWorks Anthology, Java,cpp,자바,oop,좋은코드,객체지향프로그래밍 (1)
2018/12/26 - [Programming/Java] - JavaFx, how to show actual size image bigger than pane using scroll, 실제 크기 이미지를 스크롤바 사용하여 보여주는 방법, Java/cpp/kotlin/gui
2019/01/14 - [Programming/Java] - 자바 메모리 누수 체크/확인/고치는 방법, Memory leak check/fix in Java application, cleanCode/좋은코드/oop/객체지향
2018/12/16 - [Life/Health care] - L-Arginine 아르기닌 usage/side effects/dosage 효능/부작용/성인,소아 용법(2)
2018/12/27 - [Life/Health care] - Milk-Thistle 밀크시슬 usage/side effects/dosage/fatigue/supplement,효능/부작용/성인,소아 용법/건강/피로회복/영양제
2018/12/26 - [Life/Health care] - Selenium 셀레늄 usage/side effects/dosage 효능/부작용/성인,소아 용법