2021.8.14提高b组模拟6t3+p7527[usaco21open]unitedcowsoffarmerjohn(树状数组)(代码片段)

SSL_LKJ SSL_LKJ     2022-12-22     752

关键词:

United Cows of Farmer John

题目传送门

解题思路

树状数组乱糊

AC代码

#include<cstdio>
#include<cstring>
using namespace std;
long long n,ans,a[200005],f[200005],t[200005];//答案要long long 
long long lowbit(long long x)//处理 

	return x&(-x);

void update(long long x,long long y)//修改 

	for(long long i=x;i<=n;i+=lowbit(i))t[i]+=y;

long long query(long long x)//查询 

	long long sum=0;
	for(long long i=x;i;i-=lowbit(i))sum+=t[i];
	return sum;

int main()

	scanf("%lld",&n);
	for(long long i=1;i<=n;i++)
	
		scanf("%lld",&a[i]);
		f[i]=n+1;//初值 
	
	for(long long i=n;i>=1;i--)//枚举起点 
	
		ans+=query(f[a[i]]-1);
		update(f[a[i]],-1);//修改区间的数的种类数 
		update(i,1);
		f[a[i]]=i;	//修改位置 
	
	printf("%lld",ans);
	return 0;


谢谢

2021.8.14提高b组模拟6t4+p7555[usaco21open]mazetactoe(dfs)(代码片段)

MazeTacToe题目传送门解题思路暴力dfs存储编号AC代码#include<iostream>#include<cstdio>usingnamespacestd;structnode intnum,x,y;map[30][30];intn,ans,px,py,b[20005],f[5][5],c[30][30][20005];intdx[4]=0,0,1 查看详情

2021.8.14提高b组模拟6t2+p7557[usaco21open]acowdemia(二分)(代码片段)

Acowdemia题目传送门题目大意输入样例1.4411100112.414110011输出样例输出最大可以达到的h指数。1.32.2题目数据题目提示样例1,在这个样例中,Bessie可以写至多4篇综述,每篇引用至多1篇论文。如果她引用她的第一篇和第三... 查看详情

2021.8.14提高b组模拟6t4+p7555[usaco21open]mazetactoe(dfs)(代码片段)

MazeTacToe题目传送门解题思路暴力dfs存储编号AC代码#include<iostream>#include<cstdio>usingnamespacestd;structnode intnum,x,y;map[30][30];intn,ans,px,py,b[20005],f[5][5],c[30][30][20005];intdx[4]=0,0,1,-1;intdy[4]=1,-1,0,0;strings;intgetsum()//求编号 intsum=0... 查看详情

2021.8.14提高b组模拟6t2+p7557[usaco21open]acowdemia(二分)(代码片段)

Acowdemia题目传送门输入样例1.4411100112.414110011输出样例1.32.2解题思路先将数据从大到小排序就满足了单调性,可以用二分查找答案check(判断)是否合法AC代码#include<algorithm>#include<cstdio>usingnamespacestd;intn,k,ll,l,r&... 查看详情

2021.7.17提高b组模拟6t1有趣的家庭菜园4(贪心)(代码片段)

有趣的家庭菜园4题目大意输入样例第一行一个整数N第二行N个整数Ai1.5322312.5975313.2202120214.812234854912985输出样例1.32.03.14.93解题思路差分+前缀和+后缀和枚举kkk取minminmin即可AC代码#include<iostream>#include<cstdio>#include<cma... 查看详情

2021.8.19提高b组模拟9t3+p7410[usaco21feb]justgreenenough(贪心)(代码片段)

JustGreenEnough题目传送门题目输入样例357120872001001502141135输出样例8解题思路这题我用的是贪心求解先将区间的值改一下=100为0,<100为-1,>100为1-11-1101-111然后每一行,从右往左做前缀和(不为-1就加1,注... 查看详情

2021.8.16提高b组模拟7t3+p7414[usaco21feb]modernart3(动态规划)(代码片段)

ModernArt3题目传送门双倍经验输入样例101234143216输出样例6解题思路dp设fi,jf_i,_jfi​,j​为区间i-j需要最少颜料的值AC代码#include<algorithm>#include<cstring>#include<cstdio>usingnamespacestd;intn,a[305],f[305][305];intmain 查看详情

2021.7.12提高b组模拟1t1好元素(hash)(代码片段)

好元素题目大意给出A数组若a[m]+a[n]+a[p]=a[i]a[m]+a[n]+a[p]=a[i]a[m]+a[n]+a[p]=a[i](1<=m,n,p<i)(m,n,p可以相同)(1<=m,n,p<iÿ 查看详情

2021.8.16提高b组模拟7t2+p7413[usaco21feb]stonegame(贪心)(代码片段)

StoneGame题目传送门输入样例1.172.6323231输出样例1.42.8解题思路判断奇偶性,然后贪心求解AC代码#include<algorithm>#include<cstdio>usingnamespacestd;intn,x,mmax,a[1000005],f[1000005],qzh[1000005];longlongans;intmain( 查看详情

2021.8.19提高b组模拟9t2+p7412[usaco21feb]yearofthecow(贪心)(代码片段)

YearoftheCow题目传送门题目输入样例53101851004695输出样例36解题思路这题就是贪心(思路中会掺杂一些样例分析)先将每个节点的年份更改为前一个牛年(如果当前节点为牛年就不变)108961084896从小到大排序求差值489... 查看详情

2021.8.16提高b组模拟7t3+p7414[usaco21feb]modernart3(动态规划)(代码片段)

ModernArt3题目传送门双倍经验输入样例101234143216输出样例6解题思路dp设fi,jf_i,_jfi​,j​为区间i-j需要最少颜料的值AC代码#include<algorithm>#include<cstring>#include<cstdio>usingnamespacestd;intn,a[305],f[305][305];intmain() memset(f,0x7f,sizeof(f)... 查看详情

2021.8.17提高b组模拟8t2+p7296[usaco21jan]udderedbutnotherd(状压dp)(离散化)(代码片段)

UdderedbutnotHerd题目传送门题目解题思路离散化+状压dpAC代码#include<algorithm>#include<cstring>#include<iostream>#include<cstdio>#include<cmath>usingnamespacestd;into,a[100005],b[100005 查看详情

2021.8.19提高b组模拟9t1+p7411[usaco21feb]comfortablecows(dfs)(代码片段)

ComfortableCows题目传送门题目输入样例9011011122122313241输出样例000100124解题思路这题就是暴搜因为每次新加一个点,影响的只是当前点和四周点而已那我们就可以暴力搜索周围判断是否对答案有影响AC代码#include<cstdio>usingname... 查看详情

2021.8.19提高b组模拟9t3+p7410[usaco21feb]justgreenenough(贪心)(代码片段)

JustGreenEnough题目传送门题目输入样例357120872001001502141135输出样例8解题思路这题我用的是贪心求解先将区间的值改一下=100为0,<100为-1,>100为1-11-1101-111然后每一行,从右往左做前缀和(不为-1就加1,注... 查看详情

2021.8.11提高b组模拟3t2+p2323[hnoi2006]公路修建问题(并查集)(代码片段)

公路修建问题洛谷题目传送门注:以下题目是纪中OJ上的题目大意OIisland是一个非常漂亮的岛屿,自开发以来,到这儿来旅游的人很多。然而,由于该岛屿刚刚开发不久,所以那里的交通情况还是很糟糕。所以,OIERAss... 查看详情

2021.8.23提高b组模拟12t1+p2945[usaco09mar]sandcastles(贪心)(代码片段)

SandCastle题目传送门题目解题思路贪心AC代码#include<algorithm>#include<cstdio>usingnamespacestd;intn,x,y,a[25005],b[25005];longlongans;intmain() scanf("%d%d%d",&n,&x,&y); for(inti=1;i<=n;i++) scanf("%d%d",&a[i],&b[i]);... 查看详情

2021.8.23提高b组模拟12t1+p2945[usaco09mar]sandcastles(贪心)(代码片段)

SandCastle题目传送门题目解题思路贪心AC代码#include<algorithm>#include<cstdio>usingnamespacestd;intn,x,y,a[25005],b[25005];longlongans;intmain() scanf("%d%d%d",&n,&x,&y); for(inti=1;i<=n;i++) scanf("%d%d",&a[i],&b[i]);... 查看详情

2018.8.9提高b组模拟考试(代码片段)

今天连续3道题都出锅...无F♂A可说T1题意简述:jzoj5775  解题思路:还算简单...       考虑先暴力算出(1,1)的魔音值,然后递推。       发现(x,y)->(x+1,y)魔音值增加了1~x行... 查看详情