正方形
しょかい public long solution(int w, int h) {
//가로로 한칸씩 움직이면서 대각선이 지나는 위치(y좌표)를 보고
//지나가는 사각형의 개수를 계속 더해준다.
//각 구간의 처음 지나가는 사각형의 위치
//현재 대각선의 y좌표가 2.5라면 2 이후의 사각형부터 지나간다.
int prevFlr = 0;
int sumOfUnUsedSqr = 0;
double division = h/(double)w;
for(int i=1; i<=w; i++) {
//한 칸 이동한 후 대각선의 y좌표를 포함한 사각형서부터
//시작 위치 사각형까지 빼주면 한 칸 이동할 때 지나간 사각형의 개수다.
sumOfUnUsedSqr += Math.ceil((division*i)-prevFlr;
prevFlr = (int)Math.floor(division*i);
}//for end
return w*(long)h - sumOfUnUsedSqr;
}//solution() end
結果を見ると、テスト6万を除いて、すべて合格しました.
置換された草
どこでエラーが発生したかを考えるとjavaでエラーに関する演算が正しくないという提案が見られ、除算法とiにiを乗じてwで割ったものに変更された. public long solution(int w, int h) {
int prevFlr = 0;
int sumOfUnUsedSqr = 0;
for(int i=1; i<=w; i++) {
sumOfUnUsedSqr += Math.ceil((long)h*i/(double)w)-prevFlr;
prevFlr = (int)Math.floor((long)h*i/(double)w);
}//for end
return w*(long)h - sumOfUnUsedSqr;
}//solution() end
Reference
この問題について(正方形), 我々は、より多くの情報をここで見つけました
https://velog.io/@nelljun/멀쩡한-사각형
テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol
public long solution(int w, int h) {
//가로로 한칸씩 움직이면서 대각선이 지나는 위치(y좌표)를 보고
//지나가는 사각형의 개수를 계속 더해준다.
//각 구간의 처음 지나가는 사각형의 위치
//현재 대각선의 y좌표가 2.5라면 2 이후의 사각형부터 지나간다.
int prevFlr = 0;
int sumOfUnUsedSqr = 0;
double division = h/(double)w;
for(int i=1; i<=w; i++) {
//한 칸 이동한 후 대각선의 y좌표를 포함한 사각형서부터
//시작 위치 사각형까지 빼주면 한 칸 이동할 때 지나간 사각형의 개수다.
sumOfUnUsedSqr += Math.ceil((division*i)-prevFlr;
prevFlr = (int)Math.floor(division*i);
}//for end
return w*(long)h - sumOfUnUsedSqr;
}//solution() end
どこでエラーが発生したかを考えるとjavaでエラーに関する演算が正しくないという提案が見られ、除算法とiにiを乗じてwで割ったものに変更された.
public long solution(int w, int h) {
int prevFlr = 0;
int sumOfUnUsedSqr = 0;
for(int i=1; i<=w; i++) {
sumOfUnUsedSqr += Math.ceil((long)h*i/(double)w)-prevFlr;
prevFlr = (int)Math.floor((long)h*i/(double)w);
}//for end
return w*(long)h - sumOfUnUsedSqr;
}//solution() end
Reference
この問題について(正方形), 我々は、より多くの情報をここで見つけました https://velog.io/@nelljun/멀쩡한-사각형テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol