구현, 수학
[백준] 1085. 직사각형에서 탈출 풀이
hch06
2025. 2. 2. 16:50
https://www.acmicpc.net/problem/1085
0부터 x, x부터 w, 0부터 y, y부터 h까지의 거리를 계산한 후 가장 작은 값을 출력한다.
C
더보기
더보기
#include <stdio.h>
int main() {
int x, y, w, h; scanf("%d %d %d %d", &x, &y, &w, &h);
x = (x > w - x) ? w - x : x; // 0~x, x~w 까지의 거리 비교
y = (y > h - y) ? h - y : y; // 0~y, y~h 까지의 거리 비교
printf("%d", (x < y) ? x : y);
}
Python
더보기
더보기
x, y, w, h = map(int, input().split())
x = w-x if x > w - x else x
y = h-y if y > h - y else y
print(min(x, y))
Java
더보기
더보기
import java.util.Scanner;
public class Main {
public static void main(String args[]) {
Scanner s = new Scanner(System.in);
int x = s.nextInt(), y = s.nextInt(), w = s.nextInt(), h = s.nextInt();
int minx = (x<w-x ? x:w-x), miny = (y<h-y ? y:h-y);
System.out.print(minx < miny ? minx : miny);
}
}
JavaScript
더보기
더보기
ip = require('fs').readFileSync(0).toString().split('\n')
var [x, y, w, h] = ip[0].split(' ').map(Number)
minx = (x < w-x ? x : w-x); miny = (y < h-y ? y : h-y)
console.log(minx < miny ? minx : miny)