您当前的位置: 首页 > 

*DDL_GzmBlog

暂无认证

  • 3浏览

    0关注

    605博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

[补题](贪心+思维) Codeforces Round #722 (Div. 2) B. Sifid and Strange Subsequences

*DDL_GzmBlog 发布时间:2021-05-25 16:46:36 ,浏览量:3

贪心+思维
  • 前言
  • 题意:
  • 思路:
    • 首先(负数是必选的):
    • 齐次(0也是必选的):
    • 最后(处理正数)
  • code:

前言

因为晚上需要DDL 所以cf基本要鸽掉了只好用来补了

DDL冲啊

题意:

就是给你一个数组, 让你找到一个长度合适的子数组(可以不连续) 条件限制 |ai−aj|≥MAX (子数组的最大值),1≤i=0 在子数组有0和负数的情况下 0作为MAX 一定是成立的

最后(处理正数)

想一想

正数好像只能拿一个

为什么呢

因为如果正数拿两个的话 |正数-正数| >= MAX 是不成立的

所以正数只能拿一个

什么时候能拿一个呢

仔细再想一想

只有最小的差值大于正数的时候才能拿 也就是需要满足|ai-aj|>=MAX (此时MAX是正数)

code:
#include 
using namespace std;
const int N =  1e5+10;
int a[N];
int n,t;
int main()
{
    cin>>t;
    while(t -- )
    {
        cin>>n;
        int ans = 0;

        int minn = 0x3f3f3f3f;
        for(int i=1;i            
关注
打赏
1657615554
查看更多评论
0.0361s