试题编号: 201903-2
试题名称: 二十四点
时间限制: 1.0s
内存限制: 512.0MB
问题描述:
代码:
#include<stdio.h>
#include<math.h>
#include<algorithm>
#include<string.h>
#include<iostream>
#include<iomanip>
#include<vector>
#include<map>
#include<set>
#include<stack>
#include<queue>
using namespace std;
int main(){
int n , number;
int rst[4];
char fuhao;
while(cin >> n){
for(int i = 0; i < n ; i++){
memset(rst , 0 , sizeof(rst));
cin >> number;
rst[0] = number;
int count = 1;
while(scanf("%c",&fuhao) != EOF && fuhao != '\n'){
cin >> number;
switch(fuhao){
case '+':
rst[count] = number;
break;
case '-':
rst[count] = -number;
break;
case 'x':
count--;
rst[count] = rst[count] * number;
break;
case '/':
count--;
rst[count] = rst[count] / number;
break;
}
count++;
}
int temp = 0;
for(int j = 0; j < count; j++){
temp += rst[j];
}
if(temp == 24){
cout << "Yes" << endl;
}else{
cout << "No" << endl;
}
}
}
return 0;
}