코틀린이고 (실수로 range 뒤에 foreach 빼먹음)
두 점 사이의 좌표들을 구하는 함수.
나도 그렇고 보통은 이렇게 for문을 중첩해서 구하더라.
근데 이건 어떤 놈이 작성한 코드.
전자랑 결과값이 동일하게 나옴.
원리가 졸라 궁금한데 내가 문과라서 도저히 모르겠다.
이런건 구글링하기도 쉽지 않고. 혹시 아는 사람 있나?
코틀린이고 (실수로 range 뒤에 foreach 빼먹음)
두 점 사이의 좌표들을 구하는 함수.
나도 그렇고 보통은 이렇게 for문을 중첩해서 구하더라.
근데 이건 어떤 놈이 작성한 코드.
전자랑 결과값이 동일하게 나옴.
원리가 졸라 궁금한데 내가 문과라서 도저히 모르겠다.
이런건 구글링하기도 쉽지 않고. 혹시 아는 사람 있나?
3차원을 1차원으로 표현하는 법 - dc App
나도 문과인데 수학 잘 모르니까 이건 그냥 추측임. 3차원은 머리 아프니까 2차원으로 대충 어떤 느낌인지만 이야기 해봄. 4*3의 공간이 있고 x가 낮은 좌표부터 나열해야해. (x가 4, y가 3) 반복문 중첩으로 짜면 변수가 두개 필요한데 나눗셈을 잘만 사용하면 하나로도 가능하다는게 내 생각이야. 0에서부터 4*3까지 열거하는 변수를 it로 두고 이걸 4로 나눈 값이 y 좌표가 되고 나머지 값은 x 좌표가 됨. 그러면 it가 1씩 증가하면서 4가 되기 이전에는 x에 0,1,2,3이 들어갈꺼야. 4 이상이 되면 나눠질 수 있으니 y는 1이 되고 x는 0부터 시작, 계속 반복하면 모두 열거됨.
a * b * c 어레이를 row major로 1차원으로 펼치면 (i,j,k)는 a*b*i + b*j + k로 대응됨. 이걸 반대로 한거.
it 이건 어디서 갑자기 나옴?
val u = it / j
https://kotlinlang.org/docs/lambdas.html#it-implicit-name-of-a-single-parameter
var it = i*j*k 이거임? repeat는 뭔가 했더니;; 코틀린;;
이거 근데 문이과랑 상관은 있나... 문과도 생각은 할 거 아니야
그냥 니처럼 하는게 더 빠르고 이해가 쉽네
N차원 배열을 1차원으로 나타내는법 역재생한거네
나름 유명한 테크닉이라 알아둬서 손해볼건 없을듯