象棋比赛

该博客讨论了一场由两位同学参加的象棋比赛,比赛没有平局,每场比赛都有胜负。博主通过输入数据解析,确定了在奇数轮比赛中获胜的同学。样例展示了一种情况,最终得出获胜参赛号为10。

象棋比赛

题目描述
两位同学进行了n场的象棋比赛(3<=n<=9,且n是奇数),他们的参赛号分别是10和20,每场比赛都有一位胜出的同学(也就是不存在平局的情况),请问最终哪位同学取得了胜利?
输入
第1行有一个整数n,代表举办比赛的次数。
第2行有n个整数(这n个整数一定是10或者是20,代表获得胜利同学的参赛号)。
输出
输出获得胜利同学的参赛号。
样例输入复制
5
10 10 20 10 20
样例输出复制
10

#include <bits/stdc++.h>
using namespace std;
int main(){
   
   
    int n,a
在提供的引用中,涉及象棋比赛C++相关内容的主要是关于两位同学进行n象棋比赛以及通过奇偶判断象棋比赛胜负的信息。 ### 两位同学n象棋比赛问题 该问题是两位参赛10和20的同学进行n象棋比赛3 <= n <= 9n是奇数),每有胜出者,需判断最终哪位同学获胜,但引用中未给出具体代码,可设计思路如下: 可以用一个数组记录每比赛的获胜者,通过遍历数组统计两位同学的获胜数,比较数大小来确定最终获胜者。 以下是示例代码: ```cpp #include <iostream> using namespace std; int main() { int n; cout << "请输入比赛数(3 <= n <= 9 n 为奇数): "; cin >> n; int wins10 = 0, wins20 = 0; for (int i = 0; i < n; i++) { int winner; cout << "请输入第 " << i + 1 << " 比赛的获胜者(10 或 20): "; cin >> winner; if (winner == 10) { wins10++; } else if (winner == 20) { wins20++; } } if (wins10 > wins20) { cout << "参赛10同学获胜" << endl; } else { cout << "参赛为 20 的同学获胜" << endl; } return 0; } ``` ### 通过奇偶判断象棋比赛胜负问题 思路是判断奇偶,偶数白赢,第一步走1 2;奇数黑赢。白的最优决策是自己行动后保持和黑皇后横坐标的差为偶数,第一步往右,然后黑上下自己也上下,黑左右自己也左右,黑斜走自己也斜走。 以下是对应的C++代码: ```cpp #include <cmath> #include <cctype> #include <cstdio> #include <string> #include <cstdlib> #include <cstring> #include <iostream> #include <algorithm> using namespace std; #define Max(a,b) ((a)>(b)?(a):(b)) #define Min(a,b) ((a)<(b)?(a):(b)) bool cmp(const int a, const int b) { return a > b; } int main() { int n; cin >> n; if (n % 2) cout << "black" << endl; else cout << "white" << endl << "1 2" << endl; return 0; } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值