上海大学五校联赛-神无月排位赛

2023-10-14 07:10

本文主要是介绍上海大学五校联赛-神无月排位赛,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

大多游戏题都是模拟题

这场比赛毕竟是人家上海人的线下赛,网络卡的不行,这道模拟题,我初写时把一个变量fg设置为了char字符型(因为比赛结果只有输赢0或1),我习惯了节省空间,可是后来用了if(fg) 判断,不管fg = '0', ascii = 48,还是'1’49,if判断都为真。我把代码给大神了,结果错了。后来我就把char fg, 改为了int fg,再次把代码给大神,可是网络卡,再也没提交上。直到最后还有几分钟结束,网络恢复10%,我把代码提交了,过了Accept。然而,大神没交成……

神无月排位赛

发布时间: 2017年7月8日 21:06   最后更新: 2017年7月8日 22:35   时间限制: 1000ms   内存限制: 128M

《神无月》作为盛大游戏2017年的全新原创大作,其开发团队在自研实力强大的传世工作室基础之上,还有美树本晴彦等日本一线知名画师及日本游戏音乐大师崎元仁加盟参与制作。目前正在不限号内测中,有很多玩家进入到神无月的世界中。

在神无月中,有着玩家之间切磋的排位赛,其段位主要分为五大段位,从低到高依次为:新兵、菁英、战将、统帅、王者。每个玩家只有从新兵段位慢慢努力,一点点晋级才能到达王者段位。成为一个王者是每一个玩家的追求和心愿。

image.png

假设神无月的段位系统如下:

从低到高的段位依次简记为:D、C、B、A、S。玩家打排位赛,每胜利1局增加10分,输1局扣除5分。每一个段位都需要积分,累计100分才可以进入晋级赛,晋级赛采用三局两胜制(3局中达到2局胜利就晋级成功,有2局失败就算晋级失败, 连胜或连败两局,第三局不需要打了)。晋级成功后,成为下一个段位,积分变为0,重新开始算分;如果晋级失败,则积分变为60,重新开始算分。为方便计算,如果该玩家一直输,积分降为0后,不再降分,也不会掉段位。

大圣同学最近对神无月非常喜欢,一直在努力成为王者。他从新兵0分开始打排位赛(刚开始处在段位D),他告诉你最近若干场比赛的最后胜利情况,请你写个算法猜猜他现在所处的段位。当段位到达S时,段位将不再提高。

有若干组数据。
每组的第一行为一个 N 0<N<500 ),表示有 N 场比赛数据。
第二行有 N 个数字,每个数字之间有空格隔开,每个数字代表每场比赛的输赢情况, 1 表示赢, 0 表示输。
注意:当第 n 场比赛结束时,若大圣同学正处于晋级赛,并且还无法决定晋级成功或失败,那么可以忽略这场晋级赛

对于每组比赛数据,输出最后所处的段位的一个英文字符( D C B A S 这五个段位中的一个)。

  复制
15
1 1 1 1 1 1 1 1 1 1 1 1 1 0 1
30
1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 0 1 1 1 1 1 1 1 1 0 1 1 1
C
B


#define _CRT_SECURE_NO_WARNINGS
#include <cstdio>
#include <iostream>
#include <cstring>
#include <string>
#include <algorithm>
using namespace std;
const char str[] = "DCBAS";
int state, score, jj, first;
void solve(int fg) {if (state >= 4) return;switch (jj) {case -1:if (fg) {score += 10;if (score >= 100) jj = 0, score = 0;}else score = score <= 5 ? 0 : score - 5;break;case 0:if (fg) first = 1;++jj;break;case 1:if (fg) {if (first == 1) {state++;//连赢两场 ,晋级 score = 0; jj = -1; first = 0;}else first = 0, ++jj; //一负一赢 }else {if (first == 0) { //连负两场 score = 60;	jj = -1;}else ++jj; // ; 一赢一负 }break;case 2: //第三场if (fg) {state++;score = 0; jj = -1; }else {score = 60; jj = -1;}first = 0;break;}
}
int main()
{int n;while (~scanf("%d", &n)) {int fg;state = 0, score = 0, jj = -1, first = 0;//jj = -1, 没有达到晋级;0,准备晋级;1,2,3 。firt 第一场是否赢 while (n-- > 0) {scanf("%d", &fg);solve(fg);}printf("%c\n", str[state]);}return 0;
}




这篇关于上海大学五校联赛-神无月排位赛的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/208944

相关文章

上海大学《2022年836+915自动控制原理真题及答案》 (完整版)

Part1:2022年上海大学真题题目 学硕836 专硕915 Part2:2022年上海大学真题答案 学硕836 专硕915

2014多校联赛总结

转眼间2014年暑期多校联赛已经落下帷幕,下面是关于暑期比赛的一些总结. 题型统计: 2014 Multi-University Training Contest 1--by FZU A:数学(费马小定理) B:网络流(最小K路径覆盖) C:树形dp(树的重心+数据结构) D:贪心 (巧妙) E:数学+dp(隐含马尔科夫模型) F:线段树(函数式+二分) G:线段树+状态压

LeetCode_sql_day18(1841.联赛信息统计)

描述 表: Teams +----------------+---------+| Column Name | Type |+----------------+---------+| team_id | int || team_name | varchar |+----------------+---------+team_id 是该表主

BUPT2014新生暑假个人排位赛09

475. 小妹妹快递公司的新址 BOJ 470 diffsum 一开始思路有问题,但是实在是没有成功构建出能够hack自己的数据 思路有两个 第一个是,峰神神奇的证明出了,答案是由数列从大到小排列后,以 n-1 为首项, 2 为公差的等差数列 为系数的和 #include <algorithm>#include <iostream>#include <iomani

BUPT2014新生暑假个人排位赛08

BOJ 448 游戏 计算几何 枚举每一条边,如果该边两侧的角有至少一个钝角,则计数 <pre name="code" class="cpp">#include <algorithm>#include <iostream>#include <iomanip>#include <cstring>#include <climits>#include <complex>#i

BUPT2014新生暑假个人排位赛07

BOJ 469 暑假作业题 纯模拟,细心耐心,这是我觉得姿势最丑的一次代码 #include <algorithm>#include <iostream>#include <iomanip>#include <cstring>#include <climits>#include <complex>#include <fstream>#include <cassert>#

BUPT2014新生暑假个人排位赛06

BOJ 447 修路 用prim计算最小生成树,用并查集计算连通块 #include <algorithm>#include <iostream>#include <iomanip>#include <cstring>#include <climits>#include <complex>#include <fstream>#include <cassert>#in

萌新联赛 2024第(六)场:郑州大学 8.21

文章目录 [ 8.21 2024第(六)场:郑州大学 ](https://ac.nowcoder.com/acm/contest/89237#question)C 16进制世界思路代码 G 等公交车思路代码 H 24点思路代码 B 百变吗喽思路代码 L koala的程序 8.21 2024第(六)场:郑州大学 C 16进制世界 若干月饼,有饱腹度和幸福值。要求饱腹度小于M

2024河南萌新联赛第五场 A日历游戏(SG函数)

题目链接 SG函数讲解 思路: 两个人对弈,然后还不满足一些常见的博弈模型,直接上SG函数。简单总结一下: 博弈论里的局面,表示的是某个人在做出决策前面临的一个情形,必胜与必败态指的就是这个人在某个局面下做出最优选择能否获胜。 显然游戏结束时是必败态,因为这时候面临局面的人还没有做出决策就比赛结束了, 说明对方在上一回合做出决定后就已经获胜了。必胜态必定存在一个必败态,必败态后面全为

2024河南省萌新联赛第(六)场 郑州大学

文章目录 2024河南省萌新联赛第(六)场 郑州大学A.装备二选一(一)题意:思路:AC代码: B.百变吗喽题意:思路:AC代码: C.16进制世界题意:思路:AC代码: D.四散而逃题意:思路:AC代码: F.追寻光的方向题意:思路:AC代码: G.等公交车题意:思路:AC代码: I.正义从不打背身题意:思路:AC代码: 2024河南省萌新联赛第(六)场 郑州大学 A.装备