自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 收藏
  • 关注

原创 Codeforces 819 D. Mister B and Astronomers 数论

题意: 有T个石子,n个人,每个人轮流取石子,一颗石子只能取一次,求每个人能取到多少石子。 假设i-1号取的位置为pos,那么i号取的位置就是(pos+ai)modT\left(pos+a_i\right) modT,如果当前位置的石子已经被取走,这个人的所取石子数量不增加,i+1取的位置为(pos+ai+ai+1)modT\left(pos+a_i+a_{i+1}\right) modT

2017-07-09 08:07:13 647

原创 Codeforces 819 C. Mister B and Beacons on Field 容斥 数学

Codeforces 819 C. Mister B and Beacons on Field 容斥 数学题意: 有一个坐标系,有两个点a,b坐标分别(n,0),(0,m),还有一个任意点c。 问题: a向原点移动,询问移动过程中有多少位置满足三点构成的三角形的面积等于S。 a在原点,b向原点移动,询问移动过程中有多少位置满足三点构成的三角形的面积等于S。 算

2017-07-07 13:20:12 856

原创 Atcoder ARC 077 F - SS KMP 字符串 周期

题意: 定义一个f(s)f(s)为将字符串s后面加上长度最小的串,使得新串仍时一个形如AA的串。在操作无限次后求[L,R]\left[L,R\right]中各个字母出现的次数。保证原串形如AA。数据范围: 2≤|S|≤2×1052≤|S|≤2×10^5 1≤l≤r≤10181≤l≤r≤10^{18} 算法: 问AK爷怎么做,被怒D这不是傻逼题吗。 考虑串是怎么

2017-07-02 14:52:00 1140 2

原创 Atcoder ARC 077 E - guruguru 差分

题意: 你有一个遥控器用来控制电视亮度m,遥控器上有两个按键,现在要确定一个“喜欢”亮度,使得操作次数最少。按键: 每次把亮度+1,当亮度等于m时,按下按键亮度会变成1。 按下按键会直接将亮度调整的你最初设定的“喜欢”亮度。 数据范围: 2≤n,m≤1052≤n,m≤10^5 1≤ai≤m1≤ai≤m ai≠ai+1ai≠ai+1 算法: 开一

2017-07-02 14:34:44 818

原创 Atcoder ARC 077 D - 11 组合数

题意: 有n+1个数,1~n每个数至少出现一次,求长度为1~n+1的不同子序列个数。数据范围: 1≤n≤1051≤n≤105 1≤ai≤n1≤ai≤n 算法: O(n)O(n)扫一遍。根据题意,重复出现的数字只有一个。考虑去掉方案数中冗余的的方案,假设重复的那个点的位置是X1,X2X_1, X_2,那么他对答案的影响就是(K−1X1−1+n−X2−1),(K−1≤X1−

2017-07-02 12:58:58 538

原创 Atcoder ARC 077 C - pushpush 模拟

题意: n个数,有两种操作,每次把这个数加到序列末端,然后翻转序列。样例解释: Sample Input 1 4 1 2 3 4 Sample Output 1 4 2 1 3 After step 1 of the first operation, b becomes: 1. After step 2 of the first o

2017-07-02 12:44:16 447

原创 Codeforces 819 E. Mister B and Flight to the Moon

题意: 给定n 个点的完全图,用三元环和四元环去覆盖整张图。构造一个方案使得每条边被覆盖两次。数据范围: 3 ≤ n ≤ 3003 ≤ n ≤ 300算法: 容易想到是要根据奇偶分别判断情况。 对于较为简单奇数: 将其中一个点拿出,在这里为了方便就暂时不考虑1号点。 每两个点为一组,组与组之间没有重复点,如四个点为A,B,C,DA≠B≠C≠DA\neq

2017-06-30 10:15:35 939

原创 Codeforces 819 B. Mister B and PR Shifts - 模拟

题意: 有一个无序排列,有操作使得∑ni=1|pi−i|\sum_{i = 1}^{n} \left| p_i -i\right|最小。 构造规则:初始时有一个排列编号为0,每次操作将排列循环右移,排列的编号+1。数据范围: 2 ≤ n ≤ 1062 ≤ n ≤ 10^6算法: 考虑维护一个桶记录pip_i在它目标位置的左边时的距离,并且记录偏左(包括在目标位置上的点)、偏右的

2017-06-28 16:21:07 901

原创 Codeforces 819 A. Mister B and Boring Game

题意: 有两个人进行字符串游戏,两个人依次在字符串中各加入b个字符和a个字符,其中b个字符为任意小写字母,a为不同于当前构造字符串中长度为a的后缀任意一个字母的小写字母。初始时字符串有长度为a的按字典序升序的字符。如a=5,s="abcde"。占坑… 题目好像出了些不可描述的问题出题人还没有正解… 还unrated,真是刺激。

2017-06-28 09:06:06 886

原创 ARC 076 F - Exhausted? -堆

题意: 有M张椅子N个人,第i个人可以坐的椅子是小于LiL_i或大于RiR_i,现在你可以加若干个椅子(可以视为在任意位子加,但不影响原有的椅子),使得N个人都能坐在椅子上。求最少要放几个椅子。数据范围: 1 ≤ N, M ≤ 2×10e5 0 ≤ Li < Ri ≤ M + 1(1 ≤ i ≤ N)算法: 把人按L排序,用堆维护暂时还没有满足的R。枚举椅子,指针扫过去就行。

2017-06-27 07:54:40 660

原创 ARC 076 E - Connected?

题意: 给出一个R×C的木板,上面有N对数字,相同数字之间连线(可以是弯的),判定是否可以不相交。算法: 考虑对答案有影响的点对,是那些两个点都在边界上的点对,然后将矩形边展开成一条线段,在线段上判定点对投影的线段之间是否可以不相交。代码:#include <bits/stdc++.h>/*#include <algorithm>#include <cstring>#include

2017-06-27 07:40:45 420

原创 ARC 076 D - Built?

题意: 有n个点,两点之间距离为min(abs(xi−xj),abs(yi−yj))min(abs(x_i - x_j),abs(y_i-y_j)),求最小生成树。算法: 将x排序后,相邻点连边,将y排序后,相邻点连边。正确性显然。代码:#include <bits/stdc++.h>/*#include <algorithm>#include <cstring>#include

2017-06-27 07:34:42 375

原创 ARC 076 C - Reconciled?

题意:有两种类别的人排成一列,同类别的人不能相邻,求方案数。算法:阶乘….代码:#include <bits/stdc++.h>/*#include <algorithm>#include <cstring>#include <cmath>#include <cstdio>#include <iostream>#include <map>#include <queue>#inclu

2017-06-27 07:27:19 415

原创 Codeforces 821 E. Okabe and El Psy Kongroo

题意:有一个人初始在起点(0,0)出发向终点 (K,0) ,每次他可以从(x,y)走到(x + 1, y),(x + 1, y - 1),(x + 1, y + 1)其中一种。现在有N条线段,每条线段都是平行于X轴的。在行进过程中,人是不超过线段高度的。求从起点到终点的方案数。算法:有一个非常简单的DP方程fi,j=fi−1,j+fi−1,j−1+fi−1,j+1f_i,_j=f_{i-1},_j+

2017-06-26 22:00:05 625

原创 Codeforces 821 D. Okabe and City

Codeforces 821 D. Okabe and City题意 :有一个n*m地图,有k个位置是点亮的,有4个移动方向,每次可以移动到相邻的点亮位置,每次站在初始被点亮某个位置,暂时使某行或该某列全部点亮,花费为1,下一次使用时,上一次暂时点亮被熄灭。算法 :最短路(好多人都拆点做,蒟蒻只会暴力….), 以K个在初始就被点亮的点建图,如果有在四联通下相邻的灯则两点之间权为0,如果两点之间横/纵

2017-06-26 20:23:03 716

原创 Codeforces 821 C. Okabe and Boxes

题意:给出2*n个操作,其中add x表示为将x压入栈中,remove表示为弹出栈顶元素,现在你可以改变栈中所有元素的顺序。求出让出栈顺序为1~n的最少改变次数。Hint :保证第i次remove时i已经在栈中。算法:模拟一个栈,如果在remove时堆顶不等于i需要改变一次,并且可以将整个栈清空。如果等于那么直接弹出堆顶就行。#include <cstdio>using namespace std;

2017-06-26 16:04:28 643

原创 Codeforces 821 B. Okabe and Banana Trees

题意:在一个坐标系内,给定一个函数 y=x−m+by=\frac{x}{-m} + b,求一个以原点和函数交点为顶点的矩形,并且矩形内坐标和最大。算法:模拟代码:#include <bits/stdc++.h>/*#include <algorithm>#include <cstring>#include <cmath>#include <cstdio>#include <iostrea

2017-06-26 14:58:34 541

原创 Codeforces 821 A. Okabe and Future Gadget Laboratory

题意:给定一个n*n的矩阵,判定A x,y=Ax,i+Aj,y (Ax,y <> 1)算法:模拟代码:#include <bits/stdc++.h>using namespace std;typedef long long LL;typedef double DB;typedef unsigned int UI;typedef pair<int, int> PII;const int inf

2017-06-26 14:45:35 614

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除