연립 방정식

시간 제한1초메모리 제한128 MB

요약
두 개의 일차방정식을 해석해 각 미지수의 값을 약분한 분수로 출력하고, 값이 하나로 정해지지 않으면 don't know를 출력한다.
난이도

보통10점 중 4점

유형
수학, 구현, 문자열
정답자
아직 제출이 없습니다

문제

xx와 yy에 대한 두 개의 일차 방정식으로 이루어진 연립 일차 방정식이 주어진다. 이 연립 방정식을 푸는 프로그램을 작성하시오.

입력

첫째 줄에 테스트 케이스의 개수 TT가 주어진다.

각 테스트 케이스는 두 개의 방정식으로 이루어지며, 한 줄에 하나씩 주어진다. 서로 다른 테스트 케이스는 빈 줄로 구분된다.

각 방정식에서 두 개 이상의 항이 연산자 +, -, =로 연결된다. 각 항은 정수이거나 변수(xx 또는 yy)이며, 변수 앞에는 마이너스 부호나 계수가 붙을 수 있다. = 기호는 한 방정식에 정확히 한 번만 나타난다. 모든 연산자는 양옆이 공백으로 둘러싸여 있으며, 하나의 항 안에는 공백이 없다.

출력

각 테스트 케이스마다 xx의 값과 yy의 값을 이 순서대로 한 줄에 하나씩 기약분수 형태로 출력한다. 값이 정수이면 분모 없이 정수만 출력한다.

어떤 변수의 값이 유일하게 정해지지 않는 경우 — 즉 연립 방정식의 해가 존재하지 않거나, 그 변수가 여러 값을 가질 수 있는 경우 — 에는 그 변수 자리에 don't know를 출력한다. 두 변수는 서로 독립적으로 판정하므로, 한 변수만 값이 정해지고 다른 변수는 don't know가 될 수도 있다.

서로 다른 테스트 케이스의 출력 사이에는 빈 줄을 하나 출력한다.

예제1

  1. 예제 1

    입력
    7
    2x + 3y = x
    5 = x + y + 3
    
    2x + 3y = 0
    10x = -15y
    
    2x + 3y = 0
    10x = -15y + 1
    
    x = 1
    3x = 6y
    
    2x = 3x + -x + y
    x + y = x + y
    
    2x = -3
    -2y = 3
    
    1 = 2
    x = 3
    
    예상 출력
    3
    -1
    
    don't know
    don't know
    
    don't know
    don't know
    
    1
    1/2
    
    don't know
    0
    
    -3/2
    -3/2
    
    don't know
    don't know