Rolling Sky Remake0.7B资格获取考试(Ⅲ卷)
满分:50分
考试时间: 2023 年 8 月 5 日 09 : 00 ~ 11 : 00
考生信息:
QQ号:
昵称:
b站uid:
注意事项:
1.整套试卷分为3卷,共200分。此为第Ⅲ卷,满分50分,时量120分钟。
2.答题时请按照题目要求作答,考试过程中不可作弊。
3.考试需要根据题目要求制作一份代码文件,编程语言是C#。
4.三卷45分以上的人经过简单的再审(主要审核三观是否正常)即可进入开发组,一起开发IIE(待定)。
5.祝你考试顺利!
代码编写(50分)
按照题目要求编写代码,编写完后上传代码文件。
背景:
在RSR中,自定义速度是一个很重要的功能。但是随着速度改变,中途开始游戏时音乐的位置也会变。在0.7b中,开发者lzw需要一个音乐位置计算方法。
题面:
阅读以下代码模板
class SC{
int type;
float G1,G2,G3,G4;
}
class CustomSpeed{
//定义区 速度单位 格/秒(b/s)
List<SC> SpeedChanges;//速度修改列表
float startSpeed;//初始速度b/s
float maxSpeed;//最大速度b/s
float addSpeed;//加速度b/s2
float getPosition(int x)//计算球处于x格时音乐播放的秒数
}
}
定义常规速度S0为仅考虑初始,最大,加速度及修改与当前时间的情况下的标准速度。球的实际速度为S0*ST,ST为动态修改的速度倍数参数,默认为1。
SpeedChanges中存储着若干操作,具体如下:
-type=0:在时间为G1时将初始,最大,加速度分别改为G2,G3,G4.
-type=1:在区间[G1,G2]中,速度倍数为G3(不考虑G4,且区间不相交)
你需要补全getPosition函数。形式化的,你需要通过已知条件生成速度分段函数,并求出速度不定积分的反函数(保证存在)在自变量为x时的值。
要求:
0.使用代码模板开发,删除注释。
1.不得使用gpt,违者黑名单。
共20个测试点,对于所有测试点满足速度
恒非负。
分值占比:
1-5 保证SpeedChanges为空
6-10保证不存在任何type为1的操作
11-15加速度恒为0
16-20 无特殊性质

(这个卷应该多少人人做,但本人不希望考试结束后题目就沉入深海了,所以还是写了一个专栏)