摘要:
A #include <bits/stdc++.h> using namespace std; typedef long long LL; const int N = 60; char c[N]; void run() { scanf("%s", c + 1); int n = strlen(c + 阅读全文
摘要:
倍增 这是一道简单数论题 using namespace std; typedef long long LL; const int N = 1e5 + 10; int a[N], n; int div(int x) { if(x % 2 == 0) while(x % 2 == 0) x /= 2; 阅读全文
摘要:
泛型使用 泛型的本质是参数化类型 1、 List<T>{} public class HashSet<E>{} T和E必须是引用类型不能是基本类型 2、使用 List<Integer> list = new ArrayList<Integer>(); //后面可以直接缺省java编译器会帮我们自动推 阅读全文
摘要:
B. The Forbidden Permutation 一定要注意题目中说的是对于all i满足才算不好的,我们做的时候只要破坏一个i这个a就不算好的了,被这一点坑了,没注意到all。 #include <bits/stdc++.h> using namespace std; typedef lo 阅读全文
摘要:
C. Make It Permutation 我们希望尽可能少地进行操作可以使代价最小,我们如果要排列的话,那些重复的元素我们无论如何都要进行删除的,所以我们可以先把去重的代价计算出来,然后依次枚举排列的位数是多少,也就是枚举去重后的数组,其中的代价我们可以一次计算出来,当我们枚举第i个a时,前面1 阅读全文
摘要:
A. Ian and Array Sorting 思路:首先我们可以从前往后做一遍,把除了最后一个元素其他所有数都变成和第一个数一样的数,然后假如前n-1个数个数为偶数,这样我们分组进行操作,一定可以把所有数变成无限小,也就是说一定会有解,也就是说n为奇数一定有解,我们考虑n为偶数的情况,n为偶数, 阅读全文