题目名称 | 2046. JSOI 末日传说 |
---|---|
输入输出 | legend.in/out |
难度等级 | ★★ |
时间限制 | 1000 ms (1 s) |
内存限制 | 256 MiB |
测试数据 | 10 |
题目来源 | Skyo 于2015-09-27加入 |
开放分组 | 全部用户 |
提交状态 | |
分类标签 | |
分享题解 |
通过:6, 提交:10, 通过率:60% | ||||
devil | 100 | 0.038 s | 0.50 MiB | C++ |
Skyo | 100 | 0.047 s | 0.50 MiB | C++ |
四季木哥 | 100 | 0.047 s | 0.50 MiB | C++ |
woca | 100 | 0.048 s | 0.50 MiB | C++ |
thomount | 100 | 0.083 s | 2.01 MiB | C++ |
胡嘉兴 | 100 | 0.124 s | 0.50 MiB | C++ |
胡嘉兴 | 70 | 3.785 s | 0.49 MiB | C++ |
thomount | 50 | 0.088 s | 2.01 MiB | C++ |
thomount | 10 | 0.089 s | 2.01 MiB | C++ |
thomount | 10 | 0.093 s | 2.01 MiB | C++ |
关于 JSOI 末日传说 的近10条评论(全部评论) | ||||
---|---|---|---|---|
练习赋值的好题
|
在古老的东方,人们都采用一种奇妙的方式记录日期:他们用一些特殊的符号来表示从1开始的连续整数,1表示最小而N表示最大。创世纪的第一天,日历就被赋予了生命,它自动的开始计数,就像排列在不断地增加。
我们用1——N来表示日历的元素,第一天的日历是:1,2,3,……N-1,N;第二天,日历自动变为1,2,3,……N,N-1,每次他都生成一个以前从未出现过的“最小”的排列——将它转为(N+1)进制后数的数值最小。
有一天,一个预言者出现了——虽然没人让他出现——他预言道,当这个日历到达某个上帝安排的时刻(……),这个世界就会崩溃……他还预言,假如一个某一个日子的逆序到达一个指定数值M时,世界末日将来临。
逆序是什么?日历中两个不同的符号,假如排在前面的那个比后面的那个大,就是一个逆序(不一定相邻)。人们期待一个贤者来预见那一天。
任务:输出1到n的全排列中,字典序最小的包含m个逆序对的排列。 (i, j)是一个逆序对当且仅当(i < j && a[i] > a[j])。
只包含一行两个正整数,分别为N和M。
输出一行,为世界末日的日期,每个数字间用一个空格隔开。
5 4
1 3 5 4 2
对于10%的数据有N<=10。
对于40%的数据有N<=1000。
对于100%的数据有N<=50000。
所有数据均有解。