입력 코드
#include <stdio.h>
main() {
int x[4], y[4];
int i;
for (i = 0; i < 3; i++) {
scanf("%d %d", &x[i], &y[i]);
}
if (x[0] == x[1])
x[3] = x[2];
else if (x[0] == x[2])
x[3] = x[1];
else
x[3] = x[0];
if (y[0] == y[1])
y[3] = y[2];
else if (y[0] == y[2])
y[3] = y[1];
else
y[3] = y[0];
printf("%d %d\n", x[3], y[3]);
}
코드 설명
#구현 #기하학 #조건문
#include <stdio.h>
main() {
int x[4], y[4];
int i;
for (i = 0; i < 3; i++) {
scanf("%d %d", &x[i], &y[i]);
}
for (i = 0; i < 3; i++) {
if (x[i] == x[i + 1]) {
x[3] = x[i + 2];
break;
}
else if (x[i] == x[i + 2]) {
x[3] = x[i + 1];
break;
}
else if (x[i + 1] = x[i + 2]) {
x[3] = x[i];
break;
}
}
for (i = 0; i < 3; i++) {
if (y[i] == y[i + 1]) {
y[3] = y[i + 2];
break;
}
else if (y[i] == y[i + 2]) {
y[3] = y[i + 1];
break;
}
else if (y[i + 1] = y[i + 2]) {
y[3] = y[i];
break;
}
}
printf("%d %d\n", x[3], y[3]);
}
처음에는 그냥 다 일일이 비교했다. x좌표와 y좌표를 각각 배열에 집어넣고, x[0]=x[1]이거나 x[0]=x[2]이거나 x[1]=x[2]인 경우로 나누어서 x[3]값을 지정했다. 어차피 이럴 거면 반복문을 사용하지 않아도 되었겠지만..
그래서 다른 풀이를 찾아봤는데 if, else if, else로 더 깔끔하게 작성할 수도 있을 것 같다.
↓↓↓ 참고한 사이트
문제 출처
'C' 카테고리의 다른 글
#43. [백준_C언어] 3053 : 택시 기하학 (0) | 2021.01.22 |
---|---|
#42. [백준_C언어] 4153 : 직각삼각형 (0) | 2021.01.21 |
#40. [백준_C언어] 10757 : 큰 수 A+B (1) | 2021.01.20 |
#39. [백준_C언어] 2839 : 설탕 배달 (0) | 2021.01.20 |
#38. [백준_C언어] 2775 : 부녀회장이 될테야 (0) | 2021.01.19 |