摘要:
#include <cstdio> typedef long long ll; const int N = 100005; // 最大能计算的n上限 const int MOD = 1000000007; // 1e9 + 7 ll fac[N]; // 用于存储阶乘结果 ll qpow(ll a, 阅读全文
摘要:
题意: 给出一个由n个数字组成的数组,先让你找出符合下列条件的子集的数量: 每个子集包含的数字个数为m = 3 这三个数字中的最大值减去最小值不超过k = 2 思路: 首先对给出的数组进行排序,现在假设这个数组为$a$,这个子集为${A_1, A_2, A_3}$,那么我们每次枚举$A_1$,用一个 阅读全文
摘要:
题意: 给出一个数字x,让你找出一个由1到9这九个数字组成的数字,这个数字的每一位加起来等于x,并且1到9每个数字只能出现一次。若能找到这样的数字,输出这其中最小的一个,否则输出-1。 思路: 利用二进制枚举,枚举每个1到9这九个数字是否出现。每次枚举若和等于x,则将被选中的数字从小到大排列,取得到 阅读全文
摘要:
codeforces1462D 题意: 给出一个由n个数组成的数组,现在你可以对这个数组进行如下操作:将数组中的一个元素加到这个元素的两边中的一边,然后将这个元素删掉。若该元素在最左边,那么该元素不能加到左边,因为它的左边已经没有元素了,同理最右边。现在问你最少几次这样的操作可以让整个数组的每个元素 阅读全文