SHUoj 神无月排位赛

2023-10-14 07:10
文章标签 排位赛 神无月 shuoj

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

神无月排位赛

发布时间: 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时,段位将不再提高。

输入

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

输出

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

样例输入1 复制
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
样例输出1
C
B
思路:模拟即可,注意打到S段位后将固定在S段位,不再提高或降低
AC代码:
#define _CRT_SECURE_NO_DEPRECATE
#include<iostream>
#include<algorithm>
#include<queue>
#include<set>
#include<vector>
#include<cstring>
#include<string>
using namespace std;
typedef long long ll;
const int N_MAX = 500;
int N;
int res[N_MAX];
int main() {while (scanf("%d", &N) != EOF) {int duanwei = 1, score = 0, time = 0, total = 0;bool flag = 0;for (int i = 0; i < N; i++) {scanf("%d", &res[i]);}for (int i = 0; i < N; i++) {if (!flag) {total = time = 0;//晋级赛赢的次数归位if (res[i] == 1) {score += 10;if (score >= 100) {flag = 1;//打晋级赛去了
                    }}else if (res[i] == 0) {if (score > 5)score -= 5;else score = 0;}}else {//晋级赛    total++;if (res[i] == 1) {time++;if (time >= 2) { if(duanwei<5)duanwei++; flag = 0; score = 0; continue; }//赢了两次不用继续打晋级赛了
                }if (total == 2 && time == 0) {//输了两场flag = 0; score = 60;}if (total == 3) { flag = 0; score = 60; }//打了三场的情况,没晋级
            }}switch (duanwei) {case 1:printf("D\n");break;case 2:printf("C\n");break;case 3:printf("B\n");break;case 4:printf("A\n");break;case 5:printf("S\n");break;}}return 0;
}

 

转载于:https://www.cnblogs.com/ZefengYao/p/7193683.html

这篇关于SHUoj 神无月排位赛的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

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

6.9总结(省赛排位赛1)

省赛排位赛1省赛排名赛1 - Virtual Judge (vjudge.net) 思路: 其实就是一个斐波拉契数列,当前项=前两项之和,先将范围内的数全部存起来放进一个数组,再进行累加查询 代码: #define _CRT_SECURE_NO_WARNINGS 1#include<iostream>using namespace std;typedef long long ll;

Contest3388 - 2024寒假集训-排位赛竞 赛(二)-补题(A-M)

问题 A: 三五倍数(问题 A: 三五倍数 - BUCTOJ)  思路:这题就暴力,注意一下是小于1000,别取到1000就行。 #include<bits/stdc++.h>using namespace std;int main(){int sum=0;for(int i=3;i<1000;i++){if(i%3==0||i%5==0) sum+=i;}cout<<sum;}

2022-7-5 个人排位赛2 比赛心得

比赛链接内网:10.7.95.2 资源访问控制系统 题目目录和过题数量(这场重点IJ卡了好久): B:Why Did the Cow Cross the Road V - Max Cross Farmer John 的农场里有 N 条人行横道,编号为 1…N (1≤N≤100,000)。 为了让奶牛在这些人行横道上通过,FJ 安装了电子交叉信号灯,当奶牛可以通过时,该信号灯会亮起绿

shuoj-Josephus问题-dp数学

Description 有1至 N编号的N 个人按顺时针方向围坐一圈,每人持有一个密码(正整数)做游戏。游戏开始时,以正整数m作为报数上限值,从第一个人开始顺时针方向自1开始顺序报数,报到m

shuoj-小6爱夜跑--Floyd记录多个最短路径

Description 自从小6学了最短路算法之后,就成了一个不折不扣的最短路理论拥护者,每次在校园里夜跑的时候,只要确定好起点和终点他就能快速算出最短的路径。然而小6却没有走过每一条路,只是对这些路径长度做了一个粗略估计,于是每条路就有了估计值与实际值的差距。小6想要知道从起点到终点,按照其中任意一条预估的最短路径跑,实际最长可能需要走过的路程。(因为同一长度的最短路可能有多个) I

容斥原理-shuoj—小明系列之高中时光

Description 小明是一个聪明的小孩,虽然初中没有前三年学习成绩都很差。但是凭借这中考前最后几个月的冲刺还是考进了一所离家里比较近的普通高中。刚进入高中小明对课堂上老师讲授的问题依然没有什么兴趣。但是小明的聪明头脑依然不会停止转动。平时只要一闲下来就会去思考一些有趣的数学问题。今天小明学校开运动会,小明和他的同学们都坐在操场上观看开幕仪式。爱思考的小明又闲不住了,正好小明身边有k个石子