题目描述
blablabla
样例
blablabla
算法1
(暴力枚举) $O(n^2)$
blablabla
时间复杂度
参考文献
C++ 代码
blablabla
算法2
(暴力枚举) $O(n^2)$
blablabla
时间复杂度
参考文献
C++ 代码
#include<bits/stdc++.h>
using namespace std;
int n;
int main()
{
cin>>n;
while(n--)
{
int res = 0;
int r1 = 0;
int r2 = 0;
string str;
cin>>str;
int a = str[0] - '0';
int b = str[2] - '0';
int c = str[4] - '0';
int d = str[6] - '0';
char x = str[1];
char y = str[3];
char z = str[5];
if(x == 'x' || x == '/')
{
if(x == 'x')
{
r1 = a * b;
if(y == 'x' || y == '/')
{
if(y == 'x')
{
r2 = r1 * c;
if(z == 'x' || z == '/')
{
if(z == 'x')
{
res = r2 * d;
}
else
{
res = floor(r2 / d);
}
}
else
{
if(z == '+')
{
res = r2 + d;
}
else
{
res = r2 - d;
}
}
}
else
{
r2 = floor(r1 / c);
if(z == 'x' || z == '/')
{
if(z == 'x')
{
res = r2 * d;
}
else
{
res = floor(r2 / d);
}
}
else
{
if(z == '+')
{
res = r2 + d;
}
else
{
res = r2 - d;
}
}
}
}
else
{
if(z == 'x' || z == '/')
{
if(z == 'x')
{
r2 = c * d;
}
else
{
r2 = floor(c / d);
}
if(y == '+')
{
res = r1 + r2;
}
else
{
res = r1 - r2;
}
}
else
{
if(y == '+')
{
r2 = r1 + c;
if(z == '+')
{
res = r2 + d;
}
else
{
res = r2 - d;
}
}
else
{
r2 = r1 - c;
if(z == '+')
{
res = r2 + d;
}
else
{
res = r2 - d;
}
}
}
}
}
else
{
r1 = floor(a / b);
if(y == 'x' || y == '/')
{
if(y == 'x')
{
r2 = r1 * c;
if(z == 'x' || z == '/')
{
if(z == 'x')
{
res = r2 * d;
}
else
{
res = floor(r2 / d);
}
}
else
{
if(z == '+')
{
res = r2 + d;
}
else
{
res = r2 - d;
}
}
}
else
{
r2 = floor(r1 / c);
if(z == 'x' || z == '/')
{
if(z == 'x')
{
res = r2 * d;
}
else
{
res = floor(r2 / d);
}
}
else
{
if(z == '+')
{
res = r2 + d;
}
else
{
res = r2 - d;
}
}
}
}
else
{
if(z == 'x' || z == '/')
{
if(z == 'x')
{
r2 = c * d;
}
else
{
r2 = floor(c / d);
}
if(y == '+')
{
res = r1 + r2;
}
else
{
res = r1 - r2;
}
}
else
{
if(y == '+')
{
r2 = r1 + c;
if(z == '+')
{
res = r2 + d;
}
else
{
res = r2 - d;
}
}
else
{
r2 = r1 - c;
if(z == '+')
{
res = r2 + d;
}
else
{
res = r2 - d;
}
}
}
}
}
}
else
{
if(y == 'x' || y == '/')
{
if(y == 'x')
{
r1 = b * c;
if(z == 'x' || z == '/')
{
if(z == 'x')
{
r2 = r1 * d;
if(x == '+')
{
res = a + r2;
}
else
{
res = a - r2;
}
}
else
{
r2 = floor(r1 / d);
if(x == '+')
{
res = a + r2;
}
else
{
res = a - r2;
}
}
}
else
{
if(z == '+')
{
if(x == '+')
{
res = a + r1 + d;
}
else
{
res = a - r1 + d;
}
}
else
{
if(x == '+')
{
res = a + r1 - d;
}
else
{
res = a - r1 - d;
}
}
}
}
else
{
r1 = floor(b / c);
if(z == 'x' || z == '/')
{
if(z == 'x')
{
r2 = r1 * d;
if(x == '+')
{
res = a + r2;
}
else
{
res = a - r2;
}
}
else
{
r2 = floor(r1 / d);
if(x == '+')
{
res = a + r2;
}
else
{
res = a - r2;
}
}
}
else
{
if(z == '+')
{
if(x == '+')
{
res = a + r1 + d;
}
else
{
res = a - r1 + d;
}
}
else
{
if(x == '+')
{
res = a + r1 - d;
}
else
{
res = a - r1 - d;
}
}
}
}
}
else
{
if(z == 'x' || z == '/')
{
if(z == 'x')
{
r1 = c * d;
}
else
{
r1 = floor(c / d);
}
if(x == '+')
{
if(y == '+')
{
res = a + b + r1;
}
else
{
res = a + b - r1;
}
}
else
{
if(y == '+')
{
res = a - b + r1;
}
else
{
res = a - b - r1;
}
}
}
else
{
if(x == '+')
{
if(y == '+')
{
if(z == '+')
{
res = a + b + c + d;
}
else
{
res = a + b + c - d;
}
}
else
{
if(z == '+')
{
res = a + b - c + d;
}
else
{
res = a + b - c - d;
}
}
}
else
{
if(y == '+')
{
if(z == '+')
{
res = a - b + c + d;
}
else
{
res = a - b + c - d;
}
}
else
{
if(z == '+')
{
res = a - b - c + d;
}
else
{
res = a - b - c - d;
}
}
}
}
}
}
if(res == 24)
{
cout<<"Yes"<<endl;
}
else
{
cout<<"No"<<endl;
}
}
return 0;
}