naoqi机器人总结14

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;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值