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

import sys
input = sys.stdin.readline
a,b,c,d,e,f = map(int,input().split())
for i in range (-999,1000):
for j in range (-999,1000):
if a*i + b*j == c and d*i + e*j == f:
print(i,j)
break
다른 사람 풀이
import sys
input=sys.stdin.readline
a,b,c,d,e,f = map(int, input().split())
if a!= 0 and d!= 0:
y = int((c*d-a*f)/(b*d-a*e))
elif a == 0:
y = int(c/b)
else:
y = int(f/e)
if a!=0:
x = int((c-y*b)/a)
else:
x = int((f-y*e)/d)
print(x,y)
연립방정식 푸는 공식인가보다
브루트포스와 가까운 건 내 풀이인 것 같긴 한데 이 공식을 알면 다음에 연립방정식 문제가 나왔을 때 효율적으로 풀 수 있을 것 같다.
| [파이썬/python] 백준 18870번 : 좌표 압축 (🥈2) (값 / 좌표 압축) (0) | 2023.03.27 |
|---|---|
| [파이썬/python] 백준 25305번 : 커트라인(🥉2) (0) | 2023.03.27 |
| [파이썬/python] 프로그래머스 : 카펫 (Lv.2) (브루트포스) (0) | 2023.03.27 |
| [파이썬/python] 프로그래머스 : 영어 끝말잇기 (Lv.2) (0) | 2023.03.27 |
| [파이썬/python] 프로그래머스 : 짝지어 제거하기 (Lv.2) (스택) (0) | 2023.03.27 |