γ€ŒβŒ¨οΈα΄„s」PS/λ°±μ€€_κΈ°ν•˜

[Baekjoon/λ°±μ€€][4153][C/C++] μ§κ°μ‚Όκ°ν˜•

λ£¨λ°€π•ƒπ•¦π•„π•šπ•£ 2023. 2. 6. 20:06
728x90
λ°˜μ‘ν˜•
γ€Žλͺ©μ°¨γ€
0. κ°œμš”

1. 문제
2. 풀이
3. μ½”λ“œ

0. κ°œμš”

μˆ˜ν•™, κΈ°ν•˜ν•™, ν”Όνƒ€κ³ λΌμŠ€ 정리에 κ΄€ν•œ 문제.

1. 문제

https://www.acmicpc.net/problem/4153

 

4153번: μ§κ°μ‚Όκ°ν˜•

μž…λ ₯은 μ—¬λŸ¬κ°œμ˜ ν…ŒμŠ€νŠΈμΌ€μ΄μŠ€λ‘œ 주어지며 λ§ˆμ§€λ§‰μ€„μ—λŠ” 0 0 0이 μž…λ ₯λœλ‹€. 각 ν…ŒμŠ€νŠΈμΌ€μ΄μŠ€λŠ” λͺ¨λ‘ 30,000보닀 μž‘μ€ μ–‘μ˜ μ •μˆ˜λ‘œ 주어지며, 각 μž…λ ₯은 λ³€μ˜ 길이λ₯Ό μ˜λ―Έν•œλ‹€.

www.acmicpc.net

[문제]

[Baekjoon/λ°±μ€€][4153][C/C++] μ§κ°μ‚Όκ°ν˜•
[Baekjoon/λ°±μ€€][4153][C/C++] μ§κ°μ‚Όκ°ν˜•

κ³Όκ±° μ΄μ§‘νŠΈμΈλ“€μ€ 각 λ³€λ“€μ˜ 길이가 3, 4, 5인 μ‚Όκ°ν˜•μ΄ 직각 μ‚Όκ°ν˜•μΈκ²ƒμ„ μ•Œμ•„λƒˆλ‹€. 주어진 μ„Έλ³€μ˜ 길이둜 μ‚Όκ°ν˜•μ΄ 직각인지 μ•„λ‹Œμ§€ κ΅¬λΆ„ν•˜μ‹œμ˜€.

[μž…λ ₯]

μž…λ ₯은 μ—¬λŸ¬κ°œμ˜ ν…ŒμŠ€νŠΈμΌ€μ΄μŠ€λ‘œ 주어지며 λ§ˆμ§€λ§‰μ€„μ—λŠ” 0 0 0이 μž…λ ₯λœλ‹€. 각 ν…ŒμŠ€νŠΈμΌ€μ΄μŠ€λŠ” λͺ¨λ‘ 30,000보닀 μž‘μ€ μ–‘μ˜ μ •μˆ˜λ‘œ 주어지며, 각 μž…λ ₯은 λ³€μ˜ 길이λ₯Ό μ˜λ―Έν•œλ‹€.

[좜λ ₯]

각 μž…λ ₯에 λŒ€ν•΄ 직각 μ‚Όκ°ν˜•μ΄ λ§žλ‹€λ©΄ "right", μ•„λ‹ˆλΌλ©΄ "wrong"을 좜λ ₯ν•œλ‹€.

[예제 μž…λ ₯ 1]

6 8 10
25 52 60
5 12 13
0 0 0

[예제 좜λ ₯ 1]

right
wrong
right

2. 풀이

ν”Όνƒ€κ³ λΌμŠ€μ˜ μ •λ¦¬λŠ” λ‹€μŒκ³Ό κ°™λ‹€.

[Baekjoon/λ°±μ€€][4153][C/C++] μ§κ°μ‚Όκ°ν˜•
[Baekjoon/λ°±μ€€][4153][C/C++] μ§κ°μ‚Όκ°ν˜•

μ΄λ•Œ, μž…λ ₯κ°’μœΌλ‘œ μ„Έ λ³€μ˜ 길이가 주어진닀. ν•˜μ§€λ§Œ, 제일 κΈ΄ λ³€(빗변에 ν•΄λ‹Ήν•˜λŠ” λ³€)에 ν•΄λ‹Ήν•˜λŠ” 값이 λ§ˆμ§€λ§‰μ— μž…λ ₯될지, 쀑간에 μž…λ ₯될지, μ²˜μŒμ— μž…λ ₯될지 μ•Œ 수 μ—†μœΌλ―€λ‘œ, ν”Όνƒ€κ³ λΌμŠ€μ˜ 정리λ₯Ό 각각의 변을 κΈ°μ€€μœΌλ‘œ ν•˜μ—¬ 3번 λ°˜λ³΅ν•΄μ•Ό ν•œλ‹€.

3. μ½”λ“œ

#pragma warning (disable:4996)
#include <stdio.h>

int main(int argc, char* argv[]) {
	int a, b, c; 
	
	while (true) {
		scanf("%d %d %d", &a, &b, &c);
		if (a == 0 && b == 0 && c == 0)
			break;

		if (a * a == b * b + c * c || b * b == a * a + c * c || c * c == a * a + b * b)
			printf("right\n");
		else
			printf("wrong\n");
	}

	return 0;
}
728x90
λ°˜μ‘ν˜•