ACwing
ACwing每日一题经典例题与周赛的记录
DongLUOWAN
这个作者很懒,什么都没留下…
展开
-
ACwing802-离散化-python-(数组数组+离散化)
比较难理解的一道题。我们首先对所有要进行添加操作的坐标进行离散化,用树状数组保存。当我们查询的时候,找到左右侧的端点,再利用树状数组求和即可。AC代码global a,lthglobal treedef low_bound(l,r,val): while l<=r: mid=l+r>>1 if val<=a[mid]: r=mid-1 else: l=mid+1 r原创 2022-03-31 19:58:30 · 584 阅读 · 0 评论 -
ACwing196-质数距离-C++(线性筛)
AC代码#include<iostream>#include<cstring>using namespace std;typedef long long LL;const int N=1000010;int n,m;int a[N];int prime[N],cnt,vis[N];void EulerFilter(){ for(int i=2;i<=N;i++){ if(!vis[i]){ prime[cnt++原创 2022-03-27 14:46:31 · 926 阅读 · 0 评论 -
ACwing95-开关-python-(递推与递归)
对于第一行来说,一共有1<<5种操作状态,枚举这些操作状态,得到第一行的状态,最后通过递推看最后一行能否达到都是开的状态即可。AC代码#我们枚举得是第一行得开关操作的种类import copyglobal msg,tmpdx=[0,0,0,-1,1]dy=[0,-1,1,0,0]def turn(x,y): for i in range(5): a,b=x+dx[i],y+dy[i] if 0<=a<5 and 0<=b&原创 2022-03-25 21:43:38 · 1468 阅读 · 0 评论 -
ACwing43场周赛-python
T1def judge(a,b,c): if a+b>c and a+c>b and b+c>a: return True return Falsen=int(input())ans=[]for i in range(1,n+1): for j in range(i,n+1): for k in range(j,n+1): if i^j^k==0 and judge(i,j,k): .原创 2022-03-19 20:22:16 · 105 阅读 · 0 评论 -
ACwing-每日一题打卡第三题-python-(bfs)
分类比较复杂,整体来讲比较简单dic={'Ox': 1, 'Tiger': 2, 'Rabbit': 3, 'Dragon': 4, 'Snake': 5, 'Horse': 6, 'Goat': 7, 'Monkey': 8, 'Rooster': 9, 'Dog': 10, 'Pig': 11, 'Rat': 12}n=int(input())side=[[] for i in range(n)]#记录一共出现了几个名字namedic=set()#记录每个牛的生肖animal={"Be原创 2022-03-16 19:32:52 · 485 阅读 · 0 评论