【PAT乙级】1046 划拳

it2026-03-13  1

问题描述 给定 N 个非 0 的个位数字,用其中任意 2 个数字都可以组合成 1 个 2 位的数字。要求所有可能组合出来的 2 位数字的和。例如给定 2、5、8,则可以组合出:25、28、52、58、82、85,它们的和为330。

输入格式 输入第一行先给出一个正整数 N(≤100),随后 N 行,每行给出一轮划拳的记录,格式为: 甲喊 甲划 乙喊 乙划 其中喊是喊出的数字,划是划出的数字,均为不超过 100 的正整数(两只手一起划)。

输出格式 在一行中先后输出甲、乙两人喝酒的杯数,其间以一个空格分隔。

样例输入 5 8 10 9 12 5 10 5 10 3 8 5 12 12 18 1 13 4 16 12 15

样例输出 1 2

C++代码

#include<bits/stdc++.h> using namespace std; int main(){ int j=0,y=0; int n; cin>>n; while(n--){ int jhan,jhua,yhan,yhua; cin>>jhan>>jhua>>yhan>>yhua; int s=jhan+yhan; if(jhua!=s&&yhua==s) j++; if(yhua!=s&&jhua==s) y++; } cout<<j<<" "<<y; return 0; }
最新回复(0)