一个被不点名批评的垃圾骗分暴力选手被普及难度的省选信心(??)模拟赛艹爆的题解

如果真是这种实力去什么省选啊,浪费钱浪费名额浪费时间,不如退役充当编程爱好者打网站,回去搞课内弃理从文刷刷计算题好歹成绩还好看一点

精神状态很好,也没有任何不适,几乎在正常考试都保持了挺高的精神集中,这样都垫底真是f**k

---------考场上的废柴发挥-----------

昨晚见到OZY,得知输出样例有分不会爆零太好了心情极佳,然而题怎么*******

(自从那天开始满脑子都是暴力骗分的yzh)

早上先看了半个小时题目,感觉t1就是签到找规律,t2一眼暴力+KM40分美滋滋,正解怕是在trie上乱搞吧,t3暴力又有40贼舒服,感觉正解应该是离线贪心,t4一看不会,感觉20%可以骗骗,哇这次岂不是接近200?莫名开心

t1 就是一个tyb在(0,0)点,要跳到(x,0)点,第k次跳能跳k格,问最小跳的步数

t2 就是两个字符串集合,求两两匹配的公共前缀和最大

t3 又是tyb在1点,然后往右跳到n,中间路途有陷阱伤害为a,然后有B个询问,问假如tyb一次能跳d,能够承受s的伤害,能不能跳到终点

t4 就是找树的直径,然后求最长连续的点的直径波动不超过M

一个爆搜打表,结果还调了一下,爆搜还写错了一次,然后换宽搜又搞,最后搞出来了找规律,OK 稳如老狗AC 此时9:20

结果这就是我考场上打对的唯一一个暴力。。

随便讲讲规律,把数列分段,第i段i个元素,假如当前n是第x段里第y个元素

如果x%2==1 && y%2==1 ans=x
如果x%2==1 && y%2==0 ans=x+2
如果x%2==0 && y%2==1 ans=x+1
如果x%2==0 && y%2==0 ans=x

虽然不是很满意速度,但是写出来也还是很开心的,毕竟自从NOIP2017完挂以后赌誓以后绝不能错找规律题

然后就开始开心打暴力

10:00就写完t2,t3了 怎么大佬们都在刚t4???
还是很稳,然后OZY过来水表了一下,突然想起给了大样例,测一下发现KM挂了??静态查错大半个小时,woc哪里挂了,蒙蔽虚的要死

然后楠楠就说他已经切了t2,肉老师说能拿330,我真的????心态都没了,这次题这么水????

冷静下来想t2,发现woc贼jj水,赶紧码,结果那群bt 11:30就交了,一个个200+....

心态炸裂,直接上天

最终100+10+10+0=120 中间那20还是直接输出样例

整个人都不好了。

OZY:你搞什么啊

ORZ hz&&ljw t3暴力+读优70 lxj整体二分A t3

-------------考后-----------------

我的确不是很信我KM模版居然写挂了。。

然后真的没写错,是暴力求前缀错了!!!????我   真说不出话

然后T3暴力st表里的Bin[j-1]写成Bin[j/2]什么鬼 wc

心态没了。下午就把t2t3切了,mdzz t2t3正解不跟我想得一样??!写你个棒棒锤暴力,暴力就爆十啦SB

然后晚上认真刚t4,wc,看错题了?两个问?树的直径?

菜鸡yzh

#include<cstdio>
#include<iostream>
#include<cstring>
#include<cstdlib>
#include<algorithm>
#include<cmath>

#define f(i) bl[i+100]
using namespace std;

int n,bl[210],ans;bool bk;
void dfs(int x,int k)
{
    if(x>35||x<-35)return ;
    if(k<f(x))
    {
        f(x)=k;
    }
    dfs(x+k+1,k+1);
    dfs(x-k-1,k+1);
}
int main()
{
    memset(bl,63,sizeof(bl));
    bk=false;dfs(0,0);
    for(int n=1;n<=28;n++)
    {

        printf("%d\n",f(n));
    }
    return 0;
}

t1暴力找规律

#include<cstdio>
#include<iostream>
#include<cstring>
#include<cstdlib>
#include<algorithm>
#include<cmath>
using namespace std;
typedef long long LL;
LL d[210000];
int main()
{
    freopen("a.in","r",stdin);
    freopen("a.out","w",stdout);

    d[0]=0;for(int i=1;i<=200000;i++)d[i]=d[i-1]+i;

    int T;
    scanf("%d",&T);
    while(T--)
    {
        LL n;
        scanf("%lld",&n);
        if(n<0)n=(0LL-n);
        int l=0,r=200000,bel=0;
        while(l<=r)
        {
            int mid=(l+r)/2;
            if(n<=d[mid])
            {
                r=mid-1;
                bel=mid;
            }
            else l=mid+1;
        }
        LL k=n-d[bel-1];

        if(bel%2==1)
        {
            if(k%2==1)printf("%d\n",bel);
            else printf("%d\n",bel+2);
        }
        else
        {
            if(k%2==1)printf("%d\n",bel+1);
            else printf("%d\n",bel);
        }
    }
    return 0;
}

找规律AC code

原文地址:https://www.cnblogs.com/AKCqhzdy/p/8824105.html

时间: 2024-10-29 15:52:07

一个被不点名批评的垃圾骗分暴力选手被普及难度的省选信心(??)模拟赛艹爆的题解的相关文章

51Nod 算法马拉松15 记一次悲壮而又开心的骗分比赛

OwO 故事的起源大概是zcg前天发现51Nod晚上有场马拉松,然后他就很开心的过去打了 神奇的故事就开始了: 晚上的时候我当时貌似正在写线段树?然后看见zcg一脸激动告诉我第一题有九个点直接输出B就可以A.. 然后之后zcg以奇怪的二分方式发现了如何A掉第一题的第十个点(我记得貌似是什么第5000个数等于511? OwO 就这样没有任何思考含量全凭骗分黑科技过掉了第一题 OwO 然后zcg打开了第二题,发现第二题样例有点问题,然后就发了个帖子,直接去看第三题了 我去瞅了一眼,发现这不是gcd

【一个蒟蒻的挣扎】模拟赛2解题报告

---恢复内容开始--- 今天50分,我自闭 眼瞎看错了一道题,然后两道题的代码都出了点小毛病,自闭 真的竞赛我要这样可以收拾收拾退役了真的,眼睛不能这么瞎了考试莫得人帮忙改了 如果一切都没问题今天应该有130,啊!!!!!!!!!!!!!!!!! 今天两题可以用堆,一题模拟随便写写就过了,(所以我为什么考这么差) 进入正题 题目一览(其实就3道题)(CZR到底是谁这么爱数学和折磨我们) 24点 小游戏 中位数 题1. 24点 题目描述 1.1 Background CZR很喜欢学数学,但是他数

FJoi2017 1月20日模拟赛 直线斯坦纳树(暴力+最小生成树+骗分+人工构造+随机乱搞)

[题目描述] 给定二维平面上n个整点,求该图的一个直线斯坦纳树,使得树的边长度总和尽量小. 直线斯坦纳树:使所有给定的点连通的树,所有边必须平行于坐标轴,允许在给定点外增加额外的中间节点. 如下图所示为两种直线斯坦纳树的生成方案,蓝色点为给定的点,红色点为中间节点. [输入格式] 第一行一个整数n,表示点数. 以下n行,每行两个整数表示点的x,y坐标. [输出格式] 第一行一个整数m,表示中间节点的个数. 必须满足m <= 10 * n 以下m行,每行2个整数表示中间节点的坐标. 以下n+m-1

骗分心得①

去了一趟长乐集训,也让我对于数据更加敏感了吧 最让我印象深刻的是, 1.某一道题让你进行k次判断是否可行,每次输出yes或no,然后那道题太太全部输出yes骗到了30分.... 2.还有就是某道搜索题,让你判断跳过k个障碍物之后的最短距离 那里有40%的数据k都是为0,也就是考纯搜索 3.以及,对于小数据的点,可以多注意一下特殊的0,1的情况,有时也可以过 当然这都是隐藏的信息,哪天帮到自己也说不定呢,MARK一下 骗分心得①,布布扣,bubuko.com

PAT 甲级 1081 Rational Sum (数据不严谨 点名批评)

https://pintia.cn/problem-sets/994805342720868352/problems/994805386161274880 Given N rational numbers in the form "numerator/denominator", you are supposed to calculate their sum. Input Specification: Each input file contains one test case. Eac

骗分大法之-----分块||迷之线段树例题a

什么是分块呢? 就是一种可以帮你骗到不少分的神奇的算法. 分块的写法有几种,我所知道的有①预处理②不预处理 不预处理的代码我看得一脸懵逼 所以我在这里就谈一下预处理的版本www 首先看一道题: 给定一个包含n个数的序列,初值全为0,现对这个序列有两种操作:操作1:把 给定 第k1 个数改为k2;操作2:查询 从第k1个数到第k2个数得最大值.(k1<=k2<=n) 所有的数都 <=100000 好的,如果我们搞遍历肯定超时到爆炸. 那么就要用到分块大法了 把这n个数分成若干块,然后每个块

Java垃圾回收-分代收集

Java自动垃圾回收(Automatic Garbage Collection)是自动回收堆上不再使用的内存,new的对象在程序中没有引用指向它,就会被回收.回收的实现很多,有Reference Counting Collector/Tracing Collector/Compacting Collector/Coping Collector/Generational Collector/Adaptive Collector.本文记录的是HotSpot Java VM采用的Generationa

赶赴王都[暴力骗分的做法]

在利贝尔王国王都格兰赛尔正处于一场危机当中,获得消息的小约和小艾正打算赶赴那里,阻止这场阴谋.但是在出发前,他们发生了分歧,小艾希望走最短路,以尽快到达王都,而小约则希望多走不同的道路,以收集情报.后来,他们想到了折衷的办法,选一条路径,使得总路程除以道路数的商最小(即边权平均值最小). 输入:给出利贝尔王国的地图. 第一行为两个整数n,m.表示共n个地点,其中1为小约和小艾的出发点,n为王都.另有m条道路连接这些地点. 接下来m行,每行3个整数x,y,z,描述一条有向道路.表示x到y有一条长度

[HAOI2007]理想的正方形(随机化,骗分?)

题目描述 有一个a*b的整数组成的矩阵,现请你从中找出一个n*n的正方形区域,使得该区域所有数中的最大值和最小值的差最小. 输入输出格式 输入格式: 第一行为3个整数,分别表示a,b,n的值 第二行至第a+1行每行为b个非负整数,表示矩阵中相应位置上的数.每行相邻两数之间用一空格分隔. 输出格式: 仅一个整数,为a*b矩阵中所有“n*n正方形区域中的最大整数和最小整数的差值”的最小值. 思路: 本来想码二维线段树,懒了一发,写了个随机化,然后过了??? 随机化很简单,每次随机一个点作为端点, n