atcoder equal 100d arc

ARC166 A Replace C or Swap AB 题解

Link ARC166 A Replace C or Swap AB Qustion 给出两个长度相同的由 \(A,B,C\) 组成的字符串 \(X\) 和 \(Y\) 。 需要使用一些操作使得 \(X\) 和 \(Y\) 一样 将 \(X\) 中的 \(C\) 换成 \(A\) 将 \(X\) 中 ......
题解 Replace Swap ARC 166

什么时候会重写equals和hashcode方法

在Java中,通常情况下,当你使用自定义类的实例作为集合的元素、键(key)或者在需要进行对象比较的场景,你可能会需要重写 equals() 和 hashCode() 方法。这两个方法在 Object 类中定义,但默认的实现是基于对象的内存地址,而不是基于对象的内容。通过重写这两个方法,你可以自定义 ......
hashcode 时候 方法 equals

AtCoder Beginner Contest 330

A - Counting Passes (abc330 A) 题目大意 给定\(n\)个学生的分数,以及及格分 \(x\),问多少人及格了。 解题思路 依次判断即可。 神奇的代码 #include <bits/stdc++.h> using namespace std; using LL = lon ......
Beginner AtCoder Contest 330

[ARC168E] Subsegments with Large Sums

有点意思的简单题。 答案有可二分性。合并两段,显然仍然合法。 考虑如何 check。因为答案可以被二分,我们尝试求恰好 \(x\) 段就行了。 恰好,这是 wqs 二分的内容。如何设计一个与 \(x\) 有关的凸函数呢? 这个函数大概是 \(\sum_{i=1}^x w(l_i, r_i)\) 的形 ......
Subsegments Large 168E with Sums

[ARC117E] Zero-Sum Ranges 2题解

题解 前言 个人认为官方题解写得最为详细、干净、清楚,如果有意向阅读外文版的题解的话,还是推荐去读一读: Editorial - AtCoder Regular Contest 117 本文属于转载(?),有一些自己的思考过程,希望有帮助。 题意 有多少个长度为 \(2N\) 的序列 \(A\) 满 ......
题解 Zero-Sum Ranges 117E Zero

AtCoder Beginner Contest 329 F

AtCoder Beginner Contest 329 F F - Colored Ball (atcoder.jp)(启发式合并) 问题陈述 有 \(N\) 个编号为 \(1, 2, \ldots, N\) 的盒子。最初,盒子 \(i\) 中有一个颜色为 \(C_i\) 的小球。 给你\(Q\) ......
Beginner AtCoder Contest 329

ARC168F

纪念一下第一次补完 ARC 的所有题。 本题解介绍 \(2 log\) 做法,需要卡常才能过。 感谢 @Rainbow_qwq 大佬的耐心讲解,拜谢拜谢拜谢。 首先注意到每次操作是前后缀修改,自然想到维护差分数组。 假设当前操作到了 \(a_i\),那么差分数组的 \(a_i\) 这位加 \(2\) ......
168F ARC 168

ARC168(A-C)题解

比赛链接:arc168 A 题意: 读入一个由<和>构成的字符串,在最开始,最后,字符之间可以填上任意数字,任意两个相邻数字之间必须满足字符代表的大小关系。求问最后填入的数字组成的数组最少有多少对逆序对。 题解: 签到。 <可以不去考虑,因为不会对答案造成影响。 >如果不是在连续段内,也可以不去考虑 ......
题解 ARC 168 A-C

AtCoder Regular Contest 144 E GCD of Path Weights

洛谷传送门 AtCoder 传送门 喵喵题。 考虑若所有点权都已确定,如何求 \(1\) 到 \(n\) 所有路径权值和的 \(\gcd\)。 考虑如何 check 一个 \(x\) 是否合法。\(x\) 合法的充要条件是,把不能从 \(1\) 到达的点和不能到达 \(n\) 的点扔掉后,存在一组 ......
AtCoder Regular Contest Weights Path

[AtCoder Toyota2023 Spring Final] Git Gud

拜谢 Magic Duck 大神。其次我很喜欢洛谷逆天翻译把大翻译成小…… 首先考虑算一下贡献,考虑每个点的深度,一开始都是 1,进行合并以后相当于首先把两个端点的深度累计到答案里,然后再选择一边给它的联通块内每个点深度增加 1。那么容易发现我们可以算贡献转化为每个联通块权值为它向外的度数,每次合并 ......
AtCoder Toyota Spring Final 2023

ARC168F Up-Down Queries

考虑一次询问怎么做: 我们想求的答案就是 每次减时为 \(0\) 的位置个数之和(这些位置会与 \(0\) 取 \(\max\) 从而使答案变大) + \(\sum (m-2\times a_i)\)(所有操作的总和)。 考虑维护 \(y\) 的差分数组,分析一次操作 \([1,x]\) 减 \(1 ......
Up-Down Queries 168F Down ARC

AtCoder Beginner Contest 329

劳累一天不该写题,启发式合并都写错了 A - Spread (abc329 A) 题目大意 给定一个字符串,将每个字符输出出来,中间留个空格。 解题思路 遍历输出即可。 神奇的代码 #include <bits/stdc++.h> using namespace std; using LL = lo ......
Beginner AtCoder Contest 329

AtCoder Beginner Contest(abc) 326

B - 326-like Numbers 难度: ⭐ 题目大意 如果一个三位数的百位和十位的乘积等于个位, 那么这个数就是合法的; 问大于等于n的最小的合法的数是多少; 解题思路 因为数据范围很小, 所以可以直接暴力; 神秘代码 #include<bits/stdc++.h> #define int ......
Beginner AtCoder Contest 326 abc

【题解】Atcoder snuke21_e Tournament

传送门:https://atcoder.jp/contests/snuke21/tasks/snuke21_e?lang=en 题意: 求所有 $n$ $(n \leq 100000)$ 个点的竞赛图中强连通分量个数之和。 思路: 竞赛图的好性质:对竞赛图 $SCC$ 缩点之后,所有点有一个拓扑序, ......
题解 Tournament Atcoder snuke 21

AtCoder Beginner Contest 329

C - Count xxx 题意是:给你一个字符串,求出字符串里面相同字母的子串数量 思路:用map映射即可,取每个字母的最大长度,然后加起来 using namespace std; int main(){ int n; string s; cin>>n>>s; map<char,int>mp; ......
Beginner AtCoder Contest 329

ARC144E GCD of Path Weights

Description 给定 \(n\) 个点,\(m\) 条边的有向图,图中的任意一条有向边满足 边起点的编号小于边终点的编号。每个点有点权,但其中有些点的点权未知。 你需要找到一种给未知点权值的方案,使得 所有 \(1\to n\) 的路径点权和的最大公因数最大,或者告知答案可以无限大。输出这个 ......
Weights 144E Path ARC 144

ARC168E

简要题意 给定一个长度为 $n$ 的序列 $a$,将 $a$ 划分为 $k$ 个连续段,最大化满足连续段中元素和 $\geq s$ 的连续段数。 题解 首先发现是恰好 $k$ 个连续段,这种类型的题套路地考虑 wqs 二分,然后你会惊喜的发现这玩意不是凸的,我的思考也就卡在这里了。 正确的做法是观察 ......
168E ARC 168

AtCoder Beginner Contest 329 (ABC329)

A. Spread 不说了,代码。 B. Next 不说了,代码。 C. Count xxx Description 给定一个长度为 \(N\) 的字符串 \(S\),求 \(S\) 中非空连续,并且包含重复字符的连续子串长度。 例如 $S = $ aaabaa,则它满足上述条件子串为 a,aa,a ......
329 Beginner AtCoder Contest ABC

AtCoder Beginner Contest(abc) 329

B - Next 难度: ⭐ 题目大意 给定n个数, 输出其去重后的次大值; 解题思路 暴力就行; 神秘代码 #include<bits/stdc++.h> #define int long long #define IOS ios::sync_with_stdio(false), cin.tie( ......
Beginner AtCoder Contest 329 abc

AtCoder Beginner Contest(abc) 296

B - Chessboard 难度: ⭐ 题目大意 给定一个8*8的字符矩阵, 其中只有一个' * ', 输出它的坐标; 其坐标的列用字母表示, 行用数字表示, 具体看样例解释; 解题思路 签到题不多嗦了; 神秘代码 #include<bits/stdc++.h> #define int long ......
Beginner AtCoder Contest 296 abc

AtCoder Beginner Contest 328

B - 11/11 题意是:有n个月份,要你计算出月份上的每个数位与对应月份中的每个日期数位一致的日期和 直接模拟即可 using namespace std; int a[200]; int p; bool check(int x){ p=x%10; x/=10; while(x){ int q= ......
Beginner AtCoder Contest 328

AtCoder Beginner Contest(abc) 325

B - World Meeting 难度: ⭐ 题目大意 一家公司在全球多地都有分公司; 现在总公司想选择一个时间点让所有公司都来开会; 但是每个公司的上班时间是 9:00-18:00; 给定每个公司的人数和相对于总公司的时差, 会议持续一个小时, 请问总公司最多能让多少人参加会议 解题思路 因为数 ......
Beginner AtCoder Contest 325 abc

Atcoder 中高分段 选做 与 ARC vp

开坑,主推红题和铜牌题,来源乱七八糟,目前一部分来自学校给的。 一眼秒了标绿,想了很久或是接受了提示标蓝,看了题解或者认为题很难标红。意义重大标星。很主观(然后发现其实基本上大多数题都不会,狠狠地难过了)。 以后有时间可能会开始板刷 ARC,现在,还是,慢慢来吧。 upd-2023-10-30:和 ......
Atcoder ARC vp

Java: toString Comparator Array equals

toString package org.example.c; public class A { public static String toString(Object[] array) { if (array == null) return "null"; StringBuilder strin ......
Comparator toString equals Array Java

AtCoder Beginner Contest(abc) 324

B - 3-smooth Numbers 难度: ⭐ 题目大意 给定一个数字n, 问是否可以找到两个数x和y, 使得 n = 2x3y; 解题思路 因为n的范围最大到1e18, 所以只需要暴力找x和y即可; 神秘代码 #include<bits/stdc++.h> #define int long ......
Beginner AtCoder Contest 324 abc

[ARC106F] Figures 题解

题意 给定 \(N\) 个带有若干洞的节点,其中第 \(i\) 个点上有 \(d_i\) 个洞。 先可以在两个不同的节点的洞之间连边,一个洞最多连一条边,求使得最终形成的图是一棵树的方案数,对 \(998244353\) 取模。 洞之间相互区分,两个方案不同当且仅当存在一条边在两个方案中的连的洞不同 ......
题解 Figures 106F ARC 106

[ARC160C] Power Up

题目描述: 给出一个大小为 \(N\) 的可重集 \(A=\lbrace\ A_1,A_2,\dots,A_N\ \rbrace\)。 你可以执行若干次如下操作(也可以不执行)。 将两个 \(x\) 合并成一个 \(x+1\)。 输出最终可能的集合个数对 \(998244353\) 取模的结果。 数 ......
Power 160C ARC 160 Up

AtCoder Beginner Contest(abc) 323

B - Round-Robin Tournament 难度: ⭐ 题目大意 给定n个字符串, 每个字符串的长度为n; 如果第i个字符串的第j个字符为'o', 说明i在比赛中赢了j, 如果是'x', 则是j赢了i; 最后按照赢比赛的数量从多到少进行排序; 解题思路 暴力即可; 神秘代码 #includ ......
Beginner AtCoder Contest 323 abc

AtCoder Beginner Contest 328

AtCoder Beginner Contest 328 A - Not Too Hard (atcoder.jp) #include <bits/stdc++.h> #define debug(a) cout<<#a<<"="<<a<<'\n'; using namespace std; usin ......
Beginner AtCoder Contest 328

AT_arc154_b

题目简述 输入两个字符串 \(S\) 和 \(T\),将他们进行如下操作: 将 \(S\) 字符串的第一位删掉,放在任意一位。 问最少多少次以后可以让 \(S\) 和 \(T\) 相等。 思路简述 看到这个题目以后,第一个想到的就是搜索,暴力搜一遍。但是仔细想来倒也不用这么麻烦,只需要特判一下就可以 ......
AT_arc 154 arc AT