STOI补番队互测#2】的更多相关文章

Round2轮到我出了>_<(目测总共10人参加 实际共七人) 具体情况: #1: KPM,360 #2:ccz181078,160 #3:child,150 可惜KPM没看到第一题样例里有0..(当然是我数据范围没写好TAT &题面出现严重错误..模数应该是10^9+9结果我题面里写成了10^9+7(坑了KPM80分.. 然而其他人只写暴力是什么鬼 Problem A pears: 实际情况: AC人数:3            平均分:45+ 远距离目测:   AC人数:5    …
ROUND 1 第一轮是我出的. 比赛情况: #1 NanoApe 300 (完美AK) #2 && #3 swm_sxt / ccz  200 A.candy 这道题就是个nim游戏, 我们知道当且仅当选出的各堆糖果的异或和为0时,先手必败. 这样问题转化为从N个数中选1一些数使得他们的异或和为0的方案数. 30%,O(2^N) DFS. 假如只有询问, 那么可以直接用类似01背包的dp解决. for i = 1 ~ 1024 dp(i, x) += dp(i-1, x^w_i); dp…
Description 给定整数N,求1<=x,y<=N且Gcd(x,y)为素数的 数对(x,y)有多少对. Input 一个整数N Output 如题 Sample Input 4 Sample Output 4 HINT hint 对于样例(2,2),(2,4),(3,3),(4,2) 1<=N<=10^7 思路 最近看了很多关于gcd和mod的题目. 通过最近几道题目了解了很多=.= 首先有这么一个性质:如果a∈[1,n],b∈[1,m],那么gcd(a,b)|k的有(n/k…
Description 已知一个字符串S,求它有多少个形如A+B+A的子串(len(A)>=k,len(B)>=1 ). Input 第一行一个字符串,第二行一个数 k. Output 仅一行一个数,表示满足条件的子串数. Sample Input aaaaa 1 Sample Output 6 HINT 对于 100%的数据:n<=15000 , k<=100,且字符集为所有小写字母. Solution 这道题时限15s,明显O(n2)可以过.那么如果枚举某一端形成新的子串,用k…
奇奇怪怪的题目,不知道他要我们干什么. 我们观察一波局势,发现答案最大不过5.因为如果答案是6或以上的话,我们就至少要2^(5*5)个5*5的方格. 仔细计算一波时间复杂度,再信仰一波,坚信暴力压正解. #include<bits/stdc++.h> #define sight(c) ('0'<=c&&c<='9') #define N 200007 #define int long long using namespace std; inline void rea…
题目描述 给定整数N,求1<=x,y<=N且Gcd(x,y)为素数的数对(x,y)有多少对. 输入输出格式 输入格式: 一个整数N 输出格式: 答案 输入输出样例 输入样例#1: 复制 4 输出样例#1: 复制 4 说明 对于样例(2,2),(2,4),(3,3),(4,2) 1<=N<=10^7 来源:bzoj2818 本题数据为洛谷自造数据,使用CYaRon耗时5分钟完成数据制作. #include<iostream> #include<cstdio>…
通过这道题学了伯努利数,写篇题解推一下 题目 先推一下式子 \[\sum_{i=1}^ni^d[gcd(i,n)=1] \] \[\sum_{i=1}^{n}i^d\sum_{k|i}\sum_{k|n}\mu(k) \] \[\sum_{k|n}\mu(k)\sum_{i=1}^{\frac{n}{k}}(ik)^d \] \[\sum_{k|n}\mu(k)k^d\sum_{i=1}^{\frac{n}{k}}i^d \] 我们发现这个东西不好预处理,那么我们再简化一下. 设 \(S_k(n…
补番计划 Time Limit : 4000/2000ms (Java/Other)   Memory Limit : 65535/32768K (Java/Other) Total Submission(s) : 8   Accepted Submission(s) : 1 Font: Times New Roman | Verdana | Georgia Font Size: ← → Problem Description 阿聪是一个日漫狂魔.暑假在家的时候,他有12小时在补番.12小时在睡…
#2461. 「2018 集训队互测 Day 1」完美的队列 传送门: https://loj.ac/problem/2461 题解: 直接做可能一次操作加入队列同时会弹出很多数字,无法维护:一个操作的有效区间是连续的,考虑找到操作x结束的时间ed[x],即执行(x,ed[x]]可以将x加入的数全部弹出,这样用一个vis记录数字次数就可以维护个数: 一种比较暴力的做法是:枚举x,用一个线段树维护还可以放多少个元素,枚举ed[x]更新,但是这样不满足单调性无法two-pointers; 考虑分块.…
题目来源:2018集训队互测 Round17 T2 题意: 题解: 显然我是不可能想出来的……但是觉得这题题解太神了就来搬(chao)一下……Orzpyz! 显然不会无解…… 为了方便计算石子个数,在最后面加一堆$a_i=c_i=\infty$的石子,确保每次取石子都可以取满$k$个: 先考虑$a_i=0$的情况: 设$f_{i,j}$表示只考虑第0到$i$堆石子,通关前$j$轮的最少操作次数: 设$g_{i,j}$表示只考虑第0到$i$堆石子,前$j$轮结束后再取若干次石子,每次取$k$个,使…