首页 > 其他分享 >九下四月中旬日记

九下四月中旬日记

时间:2024-04-12 21:45:07浏览次数:27  
标签:sa limits 中旬 ll sum 500010 四月 日记 rk

4.11

闲话

  • 白天考试,依次是英语早读,理综,英语,数学,长达 \(2h\) 的文综自习,文综。
    • 理综
      • 物理
        • 多选 \(BD\) 涂成了 \(CD\) ,挂了 \(3pts\) 。
        • 因不知道水是比热容最大的液体,多分讨了一种情况,挂了 \(1pts\) 。
      • 化学
    • 英语
      • \(D\) 篇阅读感觉挺贴合自身实际的。
    • 数学
      • 已知 \(\frac{x+3}{(x-2)^{2}}=\frac{A}{(x-2)^{2}}+\frac{B}{(x-2)}\) ,求 \(A-B\) 。
        • 正解:假设 \(A,B\) 为常数,然后就做完了。
        • 非正解:不可做,跳了。
      • “不透明的桌子”“不透明的正方体”
    • 文综自习
      • 课代表要求自由背诵,但前排靠门处在背诵,后排在聊天,被年级主任抓了,然后 \(D\) 了一顿。
    • 文综
      • 写完卷后 \(50min\) 都在罚坐,翻了翻世界古代史。
  • 晚上现班主任因我们太浮躁,还有被年级主任抓了的事情,把我们 \(D\) 了一顿。为了更好地营造反思环境,他甚至关了灯 \(D\) 我们。

做题纪要

4.12

闲话

  • 白天讲评试卷,但体育课正常上。
  • 物理课,物理老师讲了下今年强基的情况,劝诫我们不要偏科。
  • 历史课前,历史老师统计了下班级总分排名情况和历史满分情况。信奥作为前两百最少的( \(3/12\) ),历史满分却是最多的 (\(6/11\)) 。
  • 化学老师请假了,请了化学奥赛教练来代课,讲完后不知道讲啥就讲了讲今年强基的情况和他当时在 HZ 的 \(whk\) 成绩,劝诫我们不要偏科。
  • 因白天讲评占了奥赛课,所以第 \(9\) 节课到晚三都改奥赛。

做题纪要

luogu P7409 SvT

  • 多倍经验: CF1073G Yet Another LCP Problem

  • 记给出的后缀去重后得到 \(a\) ,将其按 \(rk\) 排序后,由 1.字符串专题 B CF1073G Yet Another LCP Problem 有 \(\sum\limits_{i=1}^{|a|}\sum\limits_{j=i+1}^{|a|}LCP(s_{a_{i} \sim n},s_{a_{j} \sim n})=\sum\limits_{i=1}^{k}\sum\limits_{j=i}^{k}\min\limits_{h=i}^{j}\{ g_{h} \}\) 。

    点击查看代码
    const ll p=23333333333333333;
    ll sa[500010],rk[1000010],oldrk[1000010],id[500010],cnt[500010],key[500010],height[500010],a[3000010],fminn[500010][20],g[3000010];
    __int128_t f[3000010];
    char s[500010];
    void write(__int128_t x)
    {
    	if(x<0)
    	{
    		putchar('-');
    		x=-x;
    	}
    	if(x>9)
    	{
    		write(x/10);
    	}
    	putchar((x%10)+'0');
    }
    bool cmp(ll a,ll b)
    {
    	return rk[a]<rk[b];
    }
    ll val(char x)
    {
    	return (ll)x;
    }
    void counting_sort(ll n,ll m)
    {
    	memset(cnt,0,sizeof(cnt));
    	for(ll i=1;i<=n;i++)
    	{
    		cnt[key[i]]++;
    	}
    	for(ll i=1;i<=m;i++)
    	{
    		cnt[i]+=cnt[i-1];
    	}
    	for(ll i=n;i>=1;i--)
    	{
    		sa[cnt[key[i]]]=id[i];
    		cnt[key[i]]--;
    	}
    }
    void init_sa(char s[],ll len)
    {
    	ll m=127,tot=0,num=0,i,j,w;
    	for(i=1;i<=len;i++)
    	{
    		rk[i]=val(s[i]);
    		id[i]=i;
    		key[i]=rk[id[i]];
    	}
    	counting_sort(len,m);
    	for(w=1;tot!=len;w<<=1,m=tot)
    	{
    		num=0;
    		for(i=len;i>=len-w+1;i--)
    		{
    			num++;
    			id[num]=i;
    		}
    		for(i=1;i<=len;i++)
    		{
    			if(sa[i]>w)
    			{
    				num++;
    				id[num]=sa[i]-w;
    			}
    		}
    		for(i=1;i<=len;i++)
    		{
    			key[i]=rk[id[i]];
    		}
    		counting_sort(len,m);
    		for(i=1;i<=len;i++)
    		{
    			oldrk[i]=rk[i];
    		}
    		tot=0;
    		for(i=1;i<=len;i++)
    		{
    			tot+=(oldrk[sa[i]]!=oldrk[sa[i-1]]||oldrk[sa[i]+w]!=oldrk[sa[i-1]+w]);
    			rk[sa[i]]=tot;
    		}
    	}
    	for(i=1,j=0;i<=len;i++)
    	{
    		j-=(j>=1);
    		while(s[i+j]==s[sa[rk[i]-1]+j])
    		{
    			j++;
    		}
    		height[rk[i]]=j;
    	}
    }
    void init(ll n,ll a[])
    {
    	memset(fminn,0x3f,sizeof(fminn));
    	for(ll i=1;i<=n;i++)
    	{
    		fminn[i][0]=a[i];
    	}
    	for(ll j=1;j<=log2(n);j++)
    	{
    		for(ll i=1;i<=n-(1<<j)+1;i++)
    		{
    			fminn[i][j]=min(fminn[i][j-1],fminn[i+(1<<(j-1))][j-1]);
    		}
    	}
    }
    ll query(ll l,ll r)
    {
    	ll t=log2(r-l+1);
    	return min(fminn[l][t],fminn[r-(1<<t)+1][t]);
    }
    __int128_t ask(ll n,ll k,ll a[])
    {
    	__int128_t sum=0;
    	ll i;
    	stack<ll>st;
    	sort(a+1,a+1+k,cmp);
    	for(i=1;i<=k;i++)
    	{
    		g[i]=query(rk[a[i-1]]+1,rk[a[i]]);
    	}
    	for(i=1;i<=k;i++)
    	{
    		while(st.empty()==0&&g[st.top()]>=g[i])
    		{
    			st.pop();
    		}
    		if(st.empty()==0)
    		{
    			f[i]=(f[st.top()]+g[i]*(i-st.top())%p)%p;
    		}
    		else
    		{
    			f[i]=(f[0]+g[i]*(i-0)%p)%p;
    		}
    		st.push(i);
    		sum=(sum+f[i])%p;
    	}
    	return sum;
    }
    int main()
    {
    	ll n,m,k,i,j;
    	cin>>n>>m>>(s+1);
    	init_sa(s,n);
    	init(n,height);
    	for(j=1;j<=m;j++)
    	{
    		cin>>k;
    		for(i=1;i<=k;i++)
    		{
    			cin>>a[i];
    		}
    		sort(a+1,a+1+k);
    		k=unique(a+1,a+1+k)-(a+1);
    		write(ask(n,k,a));
    		cout<<endl;
    	}
    	return 0;
    }
    

4.13

闲话

做题纪要

BZOJ3230 相似子串

luogu P2178 [NOI2015] 品酒大会

标签:sa,limits,中旬,ll,sum,500010,四月,日记,rk
From: https://www.cnblogs.com/The-Shadow-Dragon/p/18132175

相关文章

  • 四月十一日软件测试学习
      黑盒测试用例设计方法:1、等价类划分:他的具体操作方法,就是把所有可能的输入数据,包括有效输入数据和无效输入数据,给他划分成若干个等价的子集,给他起个名字就叫做等价类,使得每个子集中的典型值在测试中的作用与这一子集中其他值的作用相同。因为咱们输入的数据分为......
  • 日记
    2024.4.11P1047[NOIP2005普及组]校门外的树#include<stdio.h>voidf(int*arry){for(inti=0;i<10001;i++){arry[i]=0;}inttotal=0,num=0;intm_1=0,m_2=0;scanf("%d%d",&total,&num);for(inti=0;i<num......
  • 蓝桥杯学习日记
    目录方法二分+区间合并搜索与图论全排列n皇后问题走迷宫树的重心图中点的层次有向图的拓扑排序数学知识数论质数:在大于1的整数中,如果只包含1和本身这两个约数,就被称为质数,或者素数质数判定-试除法null质因数:将正整数表示为一连串的质因子相乘分解质因数-试除法筛质数约数约数......
  • (学习日记)2024.04.11:UCOSIII第三十九节:软件定时器
    写在前面:由于时间的不足与学习的碎片化,写博客变得有些奢侈。但是对于记录学习(忘了以后能快速复习)的渴望一天天变得强烈。既然如此不如以天为单位,以时间为顺序,仅仅将博客当做一个知识学习的目录,记录笔者认为最通俗、最有帮助的资料,并尽量总结几句话指明本质,以便于日后搜......
  • 团队开发日记第一篇——我们的团队成立啦!
    今天是我们团队正式成立的日子,我们的第一次团队合作项目就是在参加2024腾讯公益赛的基础上开发一款与生态环保相关的小项目——生态碳足迹计算器。项目设计的目的是为了提高大众生态环保意识,增强大众在生活和生产中对环境生态的认识,通过碳足迹计算器来了解生态相关新闻、政策、知......
  • 日记 2024.4.7:子集卷积
    日记2024.4.7:子集卷积记号\(F(x)=\sum_{S\subseteq[n]}f_Sx^{S}\)是一个集合幂级数,其中\([n]=\{1,2,\cdots,n\}\),\(f_S\)是一个数组,然后写成像生成函数(其实是“形式幂级数”)的形式,\(x^S\)的这个指数是没意义的。FWT/FMT即两个集合幂级数的并、交、异或卷积运算。h......
  • 恋爱日记
    2023/12/24某人学(想)习(找)摸(爷)鱼(爷)  2024/1/13第一次一起坐车回家 ......
  • 订单日记助力“桑尼(苏州)”成功数字化转型
    感谢桑尼(苏州)智能控制系统有限公司选择使用订单日记!桑尼(苏州)智能控制系统有限公司,成立于2022年,位于江苏省苏州市吴江区,是一家集电驱动系统研发、生产、销售、技术服务为一体的企业,致力于为车企提供更好的电驱动和智能安全设备和服务,是国内外电动摩托车、工程机械、休闲旅......
  • 日记
    今天在程序竞赛上的打印漏斗,总结:发现数学规律,更容易做题;ceil函数头文件为<math.h>,并且只能对double类型进行向上取整;ps:floor为向下取整;#include<stdio.h>#include<math.h>voidf(double*x){for(inti=1;i<=*x/2;i++){for(intj=1;j<=i-1;j++){printf(......
  • 「训练日记」2024 年 4 月日记
    「训练日记」2024年4月日记点击查看目录目录「训练日记」2024年4月日记2024/04/01GalaxyUnion*2700Goshaishunting*3000LevelsandRegions*2400确实有必要写个东西监督自己.2024/04/01感谢奇蛋物语让我理解为什么巨人被喷烂尾.GalaxyUnion*2700神金.......