• 2024-02-23abc340比赛总结
    写在前面作业还没有写完,简单写一下吧,做题过程中的感受就不会写那么详细了。A比较简单,就是个等差数列,数据范围很小,随便切。B简单的题目,但是我罚时了四次。把题目看错了,下次注意。C规律一开始没有推出来,写了个不带记忆化的\(O(logn)\)的深搜(没带记忆化所
  • 2024-02-18ABC340
    Alink模拟即可。#include<bits/stdc++.h>#defineintlonglongtemplate<typenameT>voidread(T&x){ intf=1; charc=getchar(); x=0; while(c<'0'||c>'9'){ if(c=='-')f=-1; c=getchar(); } wh
  • 2024-02-13AT_abc340_f [ABC340F] S = 1
    首先我们知道:顶点为\((0,0),(x,y),(a,b)\)的三角形的面积为\(\dfrac{|ay-bx|}{2}\)。因此,问题转化为:给定整数\(x,y\),求一个整数对\((a,b)\)使得\(|ay-bx|=2\)。令\(d=\gcd(x,y)\):如果\(d\ge3\),则答案不存在,因为\(|ay-bx|\)始终是\(d\)的倍数。如果\(d=1,2\),则可
  • 2024-02-13树状数组模拟_ABC340_E - Mancala 2
    目录问题简述思路分析参考代码做题反思问题简述原题参考:E-Mancala2初始给出长度为n、m的数组a、b,要求给出m次操作后的数组a,每一次的操作流程如下:设定变量c=0;取出a[b[i]]中的数字保证手上有一个球的情况下进行以下操作:c++向a[(b[i]+c)%n]中放1可以看原题,原题有
  • 2024-02-13三角形向量公式_ABC340_F - S = 1
    目录题目概述思路分析参考代码做题反思题目概述原题参考F-S=1给出坐标(A,B),问是否存在坐标(X,Y),使得这两个点和原点围起来的三角形的面积是1,如果存在,输出一组解,否则输出-1思路分析结论+板子,没什么好分析的,想到了就好写,利用向量的叉乘求解三角形的面积,因为给出的点中有一个原
  • 2024-02-13Atcoder ABC340(A-D)
    A题题意:给出一个首项为A,尾项为B,公差为D的算数序列,要求输出符合条件的序列思路:只需要从首项开始每次加上公差输出即可代码:#include<bits/stdc++.h>#defineiosios::sync_with_stdio(false);cin.tie(0);cout.tie(0)usingnamespacestd;intadd(intx,inty){returnx
  • 2024-02-12ABC340 E&F
    E每次操作的本质:将\(b_i\)盒子的球数置为\(0\),设取出球数为\(c\)。若\(n-b_i\gec\),则给区间\([b_i+1,b_i+c]\)球数加1。否则,先给\([b_i+1,n]\)加1,再全局加\(\frac{c-n+b_i}{n}\),设最终剩下的球数为\(c'(c'<n)\),给\([1,c']\)球数加1。使用任何可以维护区间
  • 2024-02-11ABC340
    Alink模拟。Blink模拟指针。Clink记忆化搜索。时间复杂度证明可以从一个奇数分多遍以后只会有两种数这一角度入手。Dlink由于每次只能选择一种,于是可以将选择变成连边,进行最短路。Elink线段树入门。取余操作本身就是一个环。注意题目中的操作是从\(0\simn-1\)。
  • 2024-02-11ABC340
    \(\huge{C}\)link首先,考虑暴力,用一个堆,存所有数,每次拿出最大的数,拆开加入堆,计入答案,直到最大的\(\le1\),时间复杂度\(O(\text{不能过})\)。考虑想求出\(n\),要什么。求\(n\)一定是第一次把\(n\)拆成\(\lfloor{\frac{n}{2}}\rfloor\)和\(\lceil{\frac{n}{2}}\rceil\),答案加上\(n
  • 2024-02-11ABC340
    T1:ArithmeticProgression模拟代码实现a,b,d=map(int,input().split())foriinrange(a,b+1,d):print(i,end='')T2:Append模拟代码实现q=int(input())a=[]forqiinrange(q):type,x=map(int,input().split())iftype==1:
  • 2024-02-10AtCoder-abc340_f题解
    题意简述给定整数\(x,y\),询问是否存在整数\(a,b\),满足:\(-10^{18}\lea,b\le10^{18}\)。由\((0,0),(x,y),(a,b)\)三点构成的三角形面积为\(1\)。如果存在,输出任意一组;否则输出-1。思路先假设\(x,y,a,b\)都是正数。那么图大概是这样:此时红色三角形的面积就
  • 2024-02-10ABC340
    E我们可以知道每一个点在每一轮加多少,具体如下:假如现在操作的点的为\(k\)。那么所有的数都至少会加\(\dfrac{A_k}{n}\)。但是肯定有剩的,剩了\(A_k\modn\)。很明显,\(A_k\modn\)会分给接下来的\(A_k\modn\)个数。这样我们就可以知道每个点每轮加多少了。然后用线段