1.opencv
利用混合高斯模型,背景建模。
第一步:进行角点检测(特征点jiance)
第二步:传入光流估计所需要的参数(前一帧,当前帧,角点检测的结果)
2.基础算法(蓝桥)
后缀表达式
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int MAXN=1e5+10;
int n,m,k;
long long a[200005];
int kk(const void *p,const void *q)
{
return *(long long *)p-*(long long *)q;
}
int main(){
scanf("%d%d",&n,&m);
k=n+m+1;
for(int i=1;i<=k;i++) scanf("%lld",&a[i]);
long long sum=0;
if(!m){//特殊情况:m=0,直接输出和
for(int i=1;i<=k;i++) sum+=a[i];
printf("%lld\n",sum);
return 0;
}
qsort(a+1,k,sizeof(long long ),kk);
sum+=a[k];sum-=a[1];m--; //把所有数排个序,最大的拿出来,放首项,把最小的数拿出来,给他一个减号
for(int i=2;i<k;i++) sum+=abs(a[i]);//剩下的随便加减即可,为了最大负数加减号变成绝对值
printf("%lld\n",sum);
return 0;
}
灵能传输(题目讲解)
第十届蓝桥杯题目讲解(Java B组 IJ,C++ B组 BGH,C++/Java A组 CEHIJ)_哔哩哔哩_bilibili
#include<cstdio>
#include<cstdlib>
#include<algorithm>
#include<cstring>
#include<string>
#include<cmath>
#include<iostream>
#include<stack>;
using namespace std;
const int maxn=300000+10;
const int inf=0x3f3f3f3f;
typedef long long ll;
ll s[maxn],s_ord[maxn];
int vis[maxn];
int main()
{
int t,n,x;
scanf("%d",&t);
while(t--)
{
memset(vis,0,sizeof(vis));
scanf("%d",&n);
s[0]=0;
for(int i=1;i<=n;i++)
{
scanf("%d",&x);
s[i]=s[i-1]+x;
}
ll sr=0,ed=s[n];
int pos1,pos2;
if(sr>ed)swap(sr,ed);
sort(s,s+n+1);
for(int i=0;i<=n;i++)
{
if(s[i]==sr)
{
pos1=i;
break;
}
}
for(int i=0;i<=n;i++)
{
if(s[i]==ed)
{
pos2=i;
break;
}
}
int l=0,r=n;
for(int i=pos1;i>=0;i-=2)
{
s_ord[l++]=s[i];
vis[i]=true;
}
for(int i=pos2;i<=n;i+=2)
{
s_ord[r--]=s[i];
vis[i]=true;
}
for(int i=0;i<=n;i++)
{
if(!vis[i])
s_ord[l++]=s[i];
}
ll ans=0;
for(int i=1;i<=n;i++)
if(abs(s_ord[i]-s_ord[i-1])>ans)
ans=abs(s_ord[i]-s_ord[i-1]);
printf("%lld\n",ans);
}
return 0;
}