猜数字(C++)
题目描述味味最近在玩猜数字的游戏,现在她也希望你来玩一下这个游戏。猜数字游戏的规则是 这样的,告诉你一个正整数 n(2<=n<=11),然后味味心中会想一个 n 个数字组成的数字串 (数字串最前面若干位可能是 0)。味味会随意排列 n 位数上的数字,这样可能产生 n!个 n 位数。(n!=1×2×3×4×5×……×n,n!念作“n 阶乘”). 比如味味想了一个三位数 abc,那么一共会产生六个三位数,分别为 abc,acb,bac,bca,cab,cba 然后味味会把这 n!个 n 位数求和得到 S(若某数第一位开始有若干个 0,则求和时这 些 0 舍去。如有数“0123”,则求和时加到 s 中的值是 123),她会告诉你总和 S 减去她心 中想的那个数的值,请你猜出味味心中想的那个数。
输入
输入文件 guess.in 共包含两行。第一行一个整数 n(含义如前面所述),第二行一个正 整数 S,表示 n!个数的总和减去味味心中那个数的值。
输出
输出文件 change.out 共一行一个数,表示味味心中想的那个 n 位数(测试数据保证存在 唯一解)。如果该数第一位开始有若干个 0,则输出时这些 0 也必须输出(详见样例 3)。