public class Main {
public static void main(String[] args) {
System.out.println(slove("2a=a"));
System.out.println(slove("c=c+1"));
System.out.println(slove("b=b"));
System.out.println(slove("1+2abc=abc+3"));
System.out.println(slove("2+3d-2d=5d+3"));
System.out.println(slove("3d-2=5d+3"));
System.out.println(slove("3d+2d-6=5d+3"));
System.out.println(slove("-6+3d+2d=5d+3"));
System.out.println(slove("2x + 3=7"));
System.out.println(slove("2x + 3=7 + 3x - 5x"));
System.out.println(slove("2x + 3=7 - 3x - 5x"));
}
private static String slove(String s){
int fu = 1;
boolean denghao = false;
boolean hasCreate = false;
int tmp = 0;
String left = "";
int sum = 0;
int sumS = 0;
for(int i = 0; i < s.length(); i++){
if(s.charAt(i) == ' ') continue;
if(s.charAt(i) >= 'a' && s.charAt(i) <= 'z'){
if(!hasCreate){
left += s.charAt(i);
}
if(i + 1 < s.length() && (s.charAt(i + 1) < 'a' || s.charAt(i + 1) > 'z')){
if(tmp != 0){
sumS += fu * tmp;
tmp = 0;
}
else sumS += fu;
hasCreate = true;
}else if(i == s.length() - 1){
if(tmp != 0){
sumS += fu * tmp;
tmp = 0;
}
else sumS += fu;
}
}else if(s.charAt(i) == '+'){
sum += fu * tmp;
if(denghao) fu = -1;
else fu = 1;
tmp = 0;
}else if(s.charAt(i) == '-'){
sum += fu * tmp;
if(denghao) fu = 1;
else fu = -1;
tmp = 0;
}else if(s.charAt(i) == '='){
denghao = true;
sum += fu * tmp;
fu = -1;
tmp = 0;
}else if(s.charAt(i) >= '0' && s.charAt(i) <= '9'){
tmp = tmp * 10 + Integer.valueOf(s.charAt(i) - '0');
}
}
if(tmp != 0){
sum += fu * tmp;
}
sum = -sum;
if(sumS == 0 && sum != 0){
return "方程组无解";
}else if(sumS == 0 && sum == 0) {
return "方程组无限解";
}else{
double res = (double) sum / sumS;
return left + "=" + res;
}
}
}