PTA 1046 划拳問題(一點邏輯上的判斷)

2021-09-18 01:59:50 字數 757 閱讀 6675

**的實現很容易,但是邏輯上清理就需要一點點耐心了。

1046 划拳 (15 分)

划拳是古老中國酒文化的乙個有趣的組成部分。酒桌上兩人划拳的方法為:每人口中喊出乙個數字,同時用手比劃出乙個數字。如果誰比劃出的數字正好等於兩人喊出的數字之和,誰就贏了,輸家罰一杯酒。兩人同贏或兩人同輸則繼續下一輪,直到唯一的贏家出現。

下面給出甲、乙兩人的划拳記錄,請你統計他們最後分別喝了多少杯酒。

輸入格式:

輸入第一行先給出乙個正整數 n(≤100),隨後 n 行,每行給出一輪划拳的記錄,格式為:

甲喊 甲劃 乙喊 乙劃

其中喊是喊出的數字,劃是劃出的數字,均為不超過 100 的正整數(兩隻手一起劃)。

輸出格式:

在一行中先後輸出甲、乙兩人喝酒的杯數,其間以乙個空格分隔。

輸入樣例:

58 10 9 12

5 10 5 10

3 8 5 12

12 18 1 13

4 16 12 15

輸出樣例:

1 2

#include int main()

if(a[1] == temp)

if(b[1] == temp)

}//以上計算的獲勝次數,罰酒是要對方罰

printf("%d %d\n", countb, counta);

return 0;

}

PAT 乙級 1046 划拳

兩人同贏或兩人同輸則繼續下一輪,直到唯一的贏家出現。所以判斷條件一定是甲對了並且乙錯了,則乙喝一杯酒。乙對了,並且甲錯了,則甲喝一杯酒。其他情況為都不用喝酒。include includeusing namespace std struct drinkgame int counta 0 甲要喝的數量...

PAT 乙級 1046 划拳

划拳是古老中國酒文化的乙個有趣的組成部分。酒桌上兩人划拳的方法為 每人口中喊出乙個數字,同時用手比劃出乙個數字。如果誰比劃出的數字正好等於兩人喊出的數字之和,誰就贏了,輸家罰一杯酒。兩人同贏或兩人同輸則繼續下一輪,直到唯一的贏家出現。下面給出甲 乙兩人的划拳記錄,請你統計他們最後分別喝了多少杯酒。輸...

PTA乙級 1046 划拳 C語言版

簡單題15分 很多人都是一行一行輸入,然後一行一行輸出,但我總感覺那種不是完美的 划拳是古老中國酒文化的乙個有趣的組成部分。酒桌上兩人划拳的方法為 每人口中喊出乙個數字,同時用手比劃出乙個數字。如果誰比劃出的數字正好等於兩人喊出的數字之和,誰就贏了,輸家罰一杯酒。兩人同贏或兩人同輸則繼續下一輪,直到...