#1632. 音类圆周
音类圆周
音类圆周
题目背景
lk最近喜欢上了钢琴,身为初学者的他了解一些钢琴知识是必不可少的:
在钢琴键盘上每个八度中共有 12 个琴键,其中 7 个是白键,5 个是黑键,7个白键的音名分别为 C,D,E,F,G,A,B,五个黑键的音名分别是 C#,D#,F#,G#,A#,或者是 Db,Eb,Gb,Ab,Bb。由于每个音可以在不同的八度上出现,我们将不同八度但音名相同的音称为一个音类。
大调音阶是从主音开始,依次将音升高“全全半全全全半”后得到的一个音类的集合,例如以C为主音的大调音阶由 C,D,E,F,G,A,B 构成,以D为主音的大调音阶由 D,E,F#,G,A,B,C# 构成,以B为主因的大调音阶由 B,C#,D#,E,F#,G#,A# 构成。
为了方便研究这些音,我们给每个音都标上一个 0~11 之间独一无二的数字,其中 C,D,E,F,G,A,B 分别是 0,2,4,5,7,9,11,C#,D#,F#,G#,A# 分别是 1,3,6,8,10。
题目描述
AK了钢琴知识的lk找到了神犇,来检验他的学习成果,测试内容如下:
音类圆周是一个包含十二个不同的音各一个的首尾相接的音类序列。在这题中,你需要构造出一个音类圆周,并且尽可能使它的每一段长度为 7 的圆弧中的音类集合恰好是一个大调的音阶。
lk认为太简单了,便决定让你来做,lk需要你替他给出一个音类圆周,神犇会对 你 lk给出的序列评分,设给出的音类圆周中对应一个大调音阶的圆弧数量为x,则神犇对序列的评分为为
简化题意
你需要构造出一个 0~11 的排列,这个排列首尾相接后得到的圆环中,需要有尽可能多的长为 7 的圆弧中的数字集合可以由表示,其中每一个数都是一个之间的整数,加法在模12意义下计算。
输入格式
无
输出格式
输出一行十二个整数,表示你的音类圆周
样例 #1
样例输入 #1
//输入为空
样例输出 #1
0 1 2 3 4 5 6 7 8 9 10 11
提示
样例仅供参考,输入样例得0分
由于过大,大法师跑的太慢,请耐心等待结果
音阶的判定:
1.所有数字在0~11之间
2.集合具有互异性,保证构成的音类圆周不存在相同的元素
3.音阶一定是音类圆周中连续的一段
4.集合具有无序性,构成的音阶不一定严格按照的形式,可以是等形式
5.音类圆周是一个环
6.当集合中存在大于等于12的数对其取模 , 例如对于如同的集合可构成一个音阶,因为满足$\{a=4,a+2=6,a+4=8,a+5=9,a+7=11,a+9=13\pmod {12}=1,a+11=15\pmod {12}=3 \}$,