근데 내 능지가 침펜지 수준도 못된다는 것에 좌절중.
문제 : 정수 x, y, k 가 주어진다.
x부터 y까지의 정수 중 중 k로 나눠서 떨어지는 정수의 개수를 구하시오. (x, y 포함, x <= y)
x,y의 범위는 매우 클 수 있음 (bigInterger)
O(logN) 이상의 해법을 구하시오.
ex) x = 1, y = 6, k =2 일때, 2,4,6은 2로 나누어떨어진다. 따라서 답은 3
시발 이것도 못 풀어?
이딴거에 20분 쓰고 현타와서 밥먹고왔다 ㅅㅂㅌ
유클리드 그거 써서 최대공약수 구하는거랑 관련있냐
이걸 유클리드를 왜쓰냐 맨앞숫자 나누고 뒷숫자 나눠서 갯수비교하면 땡인걸
그러게 얘가 20분 걸렸다고 해서 어려운 문제인 줄 알았지
59.6 침펜지 인증
그러게 59.6 병신이네
초등학교 안나왔노 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ
닥쳐라 시발드라
나 틀린거임? X에 k나누고 y에 k나눠서 차이비교하면 되는거 아님?
맞는 것 같은데 소수점은 내림하면 끝 아님?
위에서 나 병신이라며
나도 처음에 그렇게 생각했음 ㅋ
걍 니가 구현 잘못한거 아님?
x =-2, y = 2 k =2 일때는 어떻게 할 건데?
올릴 것도 내릴 것도 없는데
X에서 무조건 하나빼고 나눈 후 내리고 뒤에꺼는 걍 나눠서 나머지 나옴 버리고 차이 구함 끝이자너 -3되고 -1.5니까 -2 y는 1 차이 3이거 모든거에 적용가능
코드로 적어바
아 시발 침팬지 맞네 진짜 30초면 생각할껄 니 코드를 들고와 어디서 틀렸는지 알려줄게
var a = (long) Math.Floor(y / (double) k); var b = (long) Math.Floor((x - 1) / (double) k); return a - b; 니가 말한거 적어봄 이거 맞냐?
존나큰수 존나 작은 소숫점 따질땐 언제나 소숫점오차랑 자료형 범위 확인해 괜히 문제에 bigInteger라고 나온거 아님 빅인티저 클래스 쓰던가
작은수에 1빼야지 b말고
x 작은수잖아 x <= y 조건인데
아 미안 작은수를 b로 했구나 그거맞음
위 식이 맞다고 생각하면 님 또 틀렸음 ㅋ
x, y, k 101, 9223372036854775806, 11 Expected: 838488366986797791 But was: 838488366986797815
그거 수식이 아니라 자료형때매 틀린거야 ㅋ
누구 비웃으려면 침팬지 지능좀 고치고 비웃으셈ㅋ
그러니까 코드를 써보라고
멍청한 새끼야 자료형 먼말인지 몰라? 그런거 신경쓰기 싫으면 걍 파이썬으로 해라 니 코드 똑같이 쓰면 돼 걍 앞에 long 형변환 없애고. 방금 파이썬으로 결과도 확인해봄
ㅇㅇ 파이썬으로는 되네. 님천재.
0, 1, 7 하면
씨샵에서는 return (y / k) - ((x - 1) / k) = 0 임;; 그래서 존나 고생해야 하는데 파이썬이 맞다 진짜.
알고리즘은 씨플플에 서브로 파이썬이 진리임
존나 큰 수에서는 오차가 나네...
바로 달았는데 바로 댓글달았네