public class Main {
static String testcase1
= "-2x^3+10x-4x^2"; static String testcase2
= "3";
public static void main
(String args
[]){ int result = eval(testcase1,testcase2);
System.
out.
println("Result : "+result
); }
int sum = 0;
int len = str.length();
for (int i = 0; i <= len; i++)
{
if(i == len || str.charAt(i) == '-' || str.charAt(i) == '+')
{
subStr = str.substring(0, i);
System.
out.
println("subStr="+subStr
); sum += evalSubPoly(subStr, valx);
if (i != len && str.charAt(i) == '+')
str = str.substring(i+1);
else
str = str.substring(i);
len = str.length();
i = 0;
}
}
return sum;
}
int len = poly.length();
int exp = 0, coeff = 0;
for(int i = 0; i < len; i++)
{
if(poly.charAt(i) == 'x')
{
num = poly.substring(0, i);
}
if(poly.charAt(i) == '^')
{
power = poly.substring(i+1, len);
}
}
if(power.equals(""))
exp = 1;
System.
out.
println("coeff="+coeff
);
int sum = 1;
for (int i = 0; i < exp; i++)
{
sum = sum*x;
}
System.
out.
println("sum="+sum
); sum = sum*coeff;
return sum;
}
}
cHVibGljIGNsYXNzIE1haW4gewoKICAgIHN0YXRpYyBTdHJpbmcgdGVzdGNhc2UxID0gIi0yeF4zKzEweC00eF4yIjsKICAgIHN0YXRpYyBTdHJpbmcgdGVzdGNhc2UyID0gIjMiOwoKICAgIHB1YmxpYyBzdGF0aWMgdm9pZCBtYWluKFN0cmluZyBhcmdzW10pewogICAgICAgIGludCByZXN1bHQgPSBldmFsKHRlc3RjYXNlMSx0ZXN0Y2FzZTIpOwogICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbigiUmVzdWx0IDogIityZXN1bHQpOwogICAgfQoKICAgIHB1YmxpYyBzdGF0aWMgaW50IGV2YWwoU3RyaW5nIHN0cixTdHJpbmcgdmFseCl7CiAgICAgICAgaW50IHN1bSA9IDA7ICAgICAgICAKICAgICAgICBTdHJpbmcgc3ViU3RyID0gIiI7CgogICAgICAgICBpbnQgbGVuID0gc3RyLmxlbmd0aCgpOwogICAgICAgICBmb3IgKGludCBpID0gMDsgaSA8PSBsZW47IGkrKykKICAgICAgICAgewogICAgICAgICAgICAgaWYoaSA9PSBsZW4gfHwgc3RyLmNoYXJBdChpKSA9PSAnLScgfHwgc3RyLmNoYXJBdChpKSA9PSAnKycpCiAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgc3ViU3RyID0gc3RyLnN1YnN0cmluZygwLCBpKTsKICAgICAgICAgICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oInN1YlN0cj0iK3N1YlN0cik7CiAgICAgICAgICAgICAgICAgc3VtICs9IGV2YWxTdWJQb2x5KHN1YlN0ciwgdmFseCk7CiAgICAgICAgICAgICAgICAgaWYgKGkgIT0gbGVuICYmIHN0ci5jaGFyQXQoaSkgPT0gJysnKQogICAgICAgICAgICAgICAgICAgc3RyID0gc3RyLnN1YnN0cmluZyhpKzEpOwogICAgICAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICAgICAgIHN0ciA9IHN0ci5zdWJzdHJpbmcoaSk7CiAgICAgICAgICAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKHN0cik7CiAgICAgICAgICAgICAgICAgbGVuID0gc3RyLmxlbmd0aCgpOwogICAgICAgICAgICAgICAgIGkgPSAwOwogICAgICAgICAgICAgfSAgICAgICAgICAgICAgIAogICAgICAgICB9CiAgICAgICAgcmV0dXJuIHN1bTsKICAgIH0KCiAgICBwdWJsaWMgc3RhdGljIGludCBldmFsU3ViUG9seShTdHJpbmcgcG9seSxTdHJpbmcgdmFseCl7CiAgICAgICAgaW50IGxlbiA9IHBvbHkubGVuZ3RoKCk7CiAgICAgICAgU3RyaW5nIG51bSA9ICIiOwogICAgICAgIFN0cmluZyBwb3dlciA9ICIiOwogICAgICAgIGludCBleHAgPSAwLCBjb2VmZiA9IDA7CgogICAgICAgIGZvcihpbnQgaSA9IDA7IGkgPCBsZW47IGkrKykKICAgICAgICB7CiAgICAgICAgICAgIGlmKHBvbHkuY2hhckF0KGkpID09ICd4JykKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgbnVtID0gcG9seS5zdWJzdHJpbmcoMCwgaSk7CiAgICAgICAgICAgICAgICBjb2VmZiA9IEludGVnZXIucGFyc2VJbnQobnVtKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgfQogICAgICAgICAgICBpZihwb2x5LmNoYXJBdChpKSA9PSAnXicpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHBvd2VyID0gcG9seS5zdWJzdHJpbmcoaSsxLCBsZW4pOwogICAgICAgICAgICAgICAgZXhwID0gSW50ZWdlci5wYXJzZUludChwb3dlcik7CiAgICAgICAgICAgIH0gICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgIH0KCiAgICAgICAgaWYocG93ZXIuZXF1YWxzKCIiKSkKICAgICAgICAgICAgZXhwID0gMTsKICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oImNvZWZmPSIrY29lZmYpOwoKICAgICAgICBpbnQgc3VtID0gMTsKICAgICAgICBpbnQgeCA9IEludGVnZXIucGFyc2VJbnQodmFseCk7CgogICAgICAgIGZvciAoaW50IGkgPSAwOyBpIDwgZXhwOyBpKyspCiAgICAgICAgewogICAgICAgICAgICBzdW0gPSBzdW0qeDsKICAgICAgICB9CiAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKCJzdW09IitzdW0pOwogICAgICAgIHN1bSA9IHN1bSpjb2VmZjsKCiAgICAgICAgcmV0dXJuIHN1bTsKICAgIH0KfQ==