同花顺_排名第一的炒股软件

同花顺_排名第一的炒股软件洛谷P2652同花顺这是在2017日照夏令营的D1T2,我认为质量相当高的一道题,第一次在赛场上做的时候爆零了,当时态度不很端正,暴力不想打,想投机取巧骗分,还是不要把希望压在不确定的事情上,有多

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

洛谷P2652 同花顺

这是在2017日照夏令营的D1T2,我认为质量相当高的一道题,第一次在赛场上做的时候爆零了,当时态度不很端正,暴力不想打,想投机取巧骗分,还是不要把希望压在不确定的事情上,有多少分实实在在拿着就拿着,然后能力之外的再尽可能获得更多。言归正传,这个用类似枚举的思路来做,枚举一个同花顺的左右端点,具体是外循环先确定j,然后枚举可能的第一个左端点,然后用n-maxans);这个的证明是向李子晗学习的,回来后我又在洛谷上做了一遍,50分。接下来是核心部分:先说我为什么是错的,我的ij中间是连续的递增+1的同花顺,然后这一部分不用换,n-最大的连续序列就是答案,但正解是a[右端点].num-a[左端点].num+1<=n;

证明如下:

j                                                                         i

 |                 |       |           |                                   |

 

这是i和j确定的序列,满足上面那个条件j就左移,为什么呢?因为要保证i,j内的序列是连续递增的(在换完之后),现在只要证明它能换完就可以了,如果a[右端点].num-a[左端点].num+1<=n

,那就是说序列总长度最多为n,好了,现在我们有n个数,那怎么换都能换到+1 递增上去,空缺就都能补上,ij之间的都不用动,所以求最大的ij之外的数的个数就好了。

注:今天向苗若桐学习了结构体重载运算符,会用了unique函数。

 

#include<bits/stdc++.h>
using namespace std;
struct node
{
    int color;
    int num;
    bool operator < (const node &a)const
    {
        if(color==a.color)
        return num<a.num;
        return color<a.color;
    }
    
    bool operator == (const node &a)const
    {
        return num==a.num&&color==a.color;
    }
    
    bool operator != (const node &a)const
    {
        return !(*this==a);
    }
    
}a[100001];


int n;
int ans;


void Cin(int &x)
{
    char c=getchar();x=0;
    while(c>'9'||c<'0') c=getchar();
    while(c<='9'&&c>='0') x=x*10+c-'0',c=getchar();
}

int main()
{

    cin>>n;
    int i;
    for(i=1;i<=n;i++)  Cin(a[i].color),Cin(a[i].num);
    sort(a+1,a+n+1);
    int from=1,to=1;
    int l=unique(a+1,a+n+1)-a;
    int maxn=0;
    for(i=1;i<l;i++)
    {
      for(int j=i;i>=1;j--)
      {
          if(a[i].color==a[j].color&&a[i].num-a[j].num+1<=n)
          maxn++;
          else
          break;
      }
      ans=max(ans,maxn);
      maxn=0;
    }
    cout<<n-ans;
    return 0;
}

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/166952.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 用js来实现那些数据结构12(散列表)

    上一篇写了如何实现简单的Map结构,因为东西太少了不让上首页。好吧。。。这一篇文章说一下散列表hashMap的实现。那么为什么要使用hashMap?hashMap又有什么优势呢?hashMap是如何

    2022年3月25日
    36
  • [重点]delphi 实现 根据给定的标题去《中国青年报》网上电子报数据中查找匹配的内容,并从该内容中取出引题、正题、副题、作者和正文。…

    [重点]delphi 实现 根据给定的标题去《中国青年报》网上电子报数据中查找匹配的内容,并从该内容中取出引题、正题、副题、作者和正文。…项目要求:根据给定的标题去《中国青年报》网上电子报数据中查找匹配的内容,并从该内容中取出引题、正题、作者和正文。unitUnit1;interfaceusesWinapi.Windows,Winapi.Messages,System.SysUtils,System.Variants,System.Classes,Vcl.Graphics,…

    2022年7月25日
    14
  • 关于经纬度坐标转换的方法有哪些_cass坐标转换方法

    关于经纬度坐标转换的方法有哪些_cass坐标转换方法地球上任何一个固定的点都可以用确定的经纬度表示,一般从GPS得到的数据是经纬度,经纬度有多种表示方法。1.)ddd.ddddd,度 . 度的十进制小数部分(5位)例如:31.

    2022年8月3日
    15
  • docker离线安装部署_安装rabbitmq

    docker离线安装部署_安装rabbitmq一、首先确保系统环境有dockerdocker-version查看如果没有可以看我的另一篇离线安装docker的文章离线安装docker二、在有外网的地方下载好docker镜像1、拉取docker镜像dockerpullrabbitmq:management2、查看下载好的镜像dockerimages3、开始创建rabbitmq容器dockerrun-d-p5672:5672-p15672:15672–namerabbitmqrabbitmq:manage

    2022年9月25日
    3
  • 常见的ARM集成开发环境

    常见的ARM集成开发环境1.ARMSDT:是ARM公司为方便用户在ARM芯片上进行应用软件开发而推出的一整套开发工具。到ARMSDT2.5.1,ARM宣布推出ARMADS1.0取代了ARMSDT,不再对ARMSDT进行维护。ARMSDT支持的ARM处理器最高到包括ARM9在内的所有ARM处理器。配合Angel驻留程序和JTAG仿真器,用户使用可方便的使用ARMSDT进行应用程序的开发。2.ARM

    2022年5月18日
    39
  • [Python嗯~机器学习]—L1正则化和L2正则化

    正则化解决过拟合问题正则化(Regularization)是机器学习中一种常用的技术,其主要目的是控制模型复杂度,减小过拟合。最基本的正则化方法是在原目标(代价)函数中添加惩罚项,对复杂度高的模型进行“惩罚”。数学表达式:式中  、 为训练样本和相应标签,  为权重系数向量;  为目标函数,  即为惩罚项,可理解为模型“规模”的某种度量;参数 控制控制正则化强弱。不同的  函数对权重…

    2022年4月11日
    104

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号