【題目描述】
定義每個遊戲由4個從1-9的數字和三個四則運算符組成,保證數字運算子將數字兩兩隔開,不存在括號和其他字元,運算順序按照四則運算順序進行。其中加法用符號『+』表示,減法用符號『-』表示,乘法用小寫字母』x』表示,除法用符號』/『表示,在遊戲裡除法為整除,例如2/3=0,3/2=1,4/2=2。
【輸入格式】
從標準輸入讀入資料。
第一行輸入乙個整數n,從第二行開始到第n+1行包含乙個長度為7的字串,為上述的24點遊戲,保證資料格式合法。
【輸出格式】
輸出到標準輸出。
包含n行,對於每個遊戲,如果其結果為24則輸出字串yes,否則輸出字串no。
【輸入樣例1】
109+3+43
5+455
7-9-9+8
56/54
3+5+7+9
11+9-9
19-5/9
8/5+69
67-36
6*4+4/5
【輸出樣例1】
yesno
noyes
yesno
nono
yesyes
**:
#include#includeusing namespace std;
int main()
for (int i = 0; i < n; i++)
char * ch = new char[7];
int * result = new int[n];
int temp = 0;
int a = 0;
int b = 0;
int * num = null;
char * cal = null;
int x = 0;
int y = 0;
for (int i = 0; i < n; i++)
else
cal[y] = ch[j + 1];
y++;
}else if (j == 6)
else
}else if (ch[j + 1] == 'x')
else if (ch[j + 1] == '/')
}x = 0;
result[i] = num[x];
x++;
for (int k = 0; k < y; k++)
else if (cal[k] == '-')
} if (result[i] == 24)
cout << "yes" << endl;
else
cout << "no" << endl;
system("pause");
deletenum;
deletecal;
} return 0;
}bool isnum(char c)
return false;
}
開始只能得50分,改了好久發現,題目中的乘法要用小寫字母『x』… CCF CSP 201903 2 二十四點
二十四點是一款著名的紙牌遊戲,其遊戲的目標是使用3個加減乘除運算使得4張紙牌上的運算結果為24。定義每乙個遊戲由4個從1 9的數字和3個四則運算符組成,保證四則運算符將數字兩兩隔開,不存在括號和其他字元,運算順序按照四則運算順序進行。其中加分用符號 表示,減法用符號 表示,乘法用小寫字母x表示,除法...
網路流二十四題
開始了我的網路流 24 題之旅,寫在一起到時候方便一起複習哦。其實這並不是真的二十四題,有一些過於水的我就不寫上來了。然後有的 太水了就不寫了。感覺這些題目還是比較基礎的,方法卻值得借鑑!剩餘題目 航空路線問題 火星探險問題以下 題目描述 點此看題 解法 你發現時間是最大的障礙,因為對於不同的時間飛...
CSP練習2 201903 2 二十四點
這個題可以普通的用陣列進行求解,也可以像本文一樣採取中綴轉字尾的方式,然後再進行計算 主要注意的地方是 題目中的乘法用的是字母x,因為這個原因改了乙個晚上 不知道這樣設定為什麼。主要 如下 include include using namespace std int transform char ...