首页 > 其他分享 >PYYZ 集训

PYYZ 集训

时间:2024-08-05 15:08:52浏览次数:6  
标签:read else int flag && PYYZ 集训 dp

摸底测试#1

T1-咕咕

直接 \(dp\),转移时注意限制即可。

点击查看代码
signed main(){

	n=read(),m=read(),t=read();
	while(t--){
		int a=read(),b=read(),c=read(),d=read();
		bool flag=0;
		if(a==n&&b==m)continue;
		if((c==a+1&&d==b)||(d==b+1&&a==c))flag=1;
		
		if(!flag||f[a][b]==-1){
			f[a][b]=-1;
			continue;
		}
		
		if(c==a+1){
			if(f[a][b]==2)f[a][b]=-1;
			else f[a][b]=1;
		}else if(d==b+1){
			if(f[a][b]==1)f[a][b]=-1;
			else f[a][b]=2;
		}
	}
	
	if(f[1][1]==-1){
		puts("0");
		return 0;
	}
	
	dp[1][1]=1;
	for(int i=1;i<=n;i++)
		for(int j=1;j<=m;j++){
			if(f[i][j]==-1)dp[i][j]=0;
			else{
				if(f[i-1][j]!=2)dp[i][j]+=dp[i-1][j];
				if(f[i][j-1]!=1)dp[i][j]+=dp[i][j-1];
				dp[i][j]%=p;
			}
		}
		
	println(dp[n][m]);

	return 0;
}


标签:read,else,int,flag,&&,PYYZ,集训,dp
From: https://www.cnblogs.com/CheZiHe929/p/18343248

相关文章

  • 2024.8广东集训体验/感受
    2024.8广东集训体验/感受出于某些不明原因,我并不方便点名道姓这次集训所在学校是哪一所学校,因此我将称其为"最美中学".FunFact:我甚至找不到一篇较官方的文档介绍这些最美中学,真是个草台班子.写这篇文章并不想单纯的开喷,我要从好坏两个方面描述一下这所中学.首先说一下好......
  • 2024梦熊BeiJing集训题目题解目录
    Day1基础动态规划luoguP1896[SCOI2005]互不侵犯codeforces1209ERotateColumns(easy)codeforces1209ERotateColumns(hard)杂题luoguP2371[国家集训队]墨墨的等式AtCoderabc219_fCleaningRobotP3043[USACO12JAN]BovineAllianceG[ARC105C]CamelsandB......
  • 福州三中集训 2024.8.3
    福州三中集训2024.8.3——找规律、构造专题早上讲了好多构造……脑袋快炸了,下午再搞比赛,脑子感觉就是火山……早上老师先来了道数学题开开胃,求:\[\sum_{i=1}^n\timesi\timesi!\modn\]我:这。。慢慢拆吧,头脑不需要风暴。呐——\[\sum_{i=1}^n\timesi\timesi!\\=(i+1......
  • 24暑假集训day2上午
    上午内容:基础数据结构1.链表分类:单向和双向单向:当前链表只指向下一个元素双向:对于每个元素,记录其前面一个元素,也记录其后面一个元素。注意:链表不建议使用STL的某些元素进行替代,手写链表更为方便。1.单向链表做法:维护每个元素编号,然后维护nx指针,表示当前元素的下一个......
  • 24暑假集训day1上午
    上午内容:枚举递推贪心广告:推荐此题单1.枚举枚举:最基础、最容易想到本质:不重复,不遗漏T1数的划分问题简述:将整数\(n\)分成\(k\)份,且每份不能为空,任意两个方案不相同(不考虑顺序)。方法:搜索关键:有顺序具体步骤:尝试从大到小进行拆分,我们记录当前数剩下总和,记录当前还需......
  • 24暑假集训day3下午
    实现代码:intexgcd(inta,intb,int&x,int&y){ if(b==0){ x=1; y=0; returna; } intd=exgcd(b,a%b,x,y); intk=x; x=y; y=k-(a/b)*y; returnd;}intmain(){ inta=read(),b=read(); intx,y; intd=exgcd(a......
  • 24暑假集训day3上午
    进制转换一个\(m\)进制的数字\(\overline{a_0a_1\cdotsa_k}\)实际上是\(a_0m^k+a_1m^{k-1}+\cdots+a_k\)。\(10\)进制转\(m\)进制:每次除以\(m\)并取出余数。\(m\)进制转\(10\)进制:计算\(a_0m^k+a_1m^{k-}+\cdots+a_k\)。进制转换问题简述:将\(n\)进制数转换......
  • 24暑假集训day2下午
    下午内容:STL差分前缀和倍增1.STL#include<iostream>#include<queue>#include<cmath>#include<algorithm>#include<vector>#include<cstring>#include<cstdio>#include<set>#include<map>#include<uno......
  • 24暑假集训day6上午&下午
    DP概念状态、转移方程、初始化先放一张图(相信都能理解:状态、转移方程、初始化的含义,随便引入斐波那契数列的题)入门题Problem1斐波那契数列\[f_i=f_{i-1}+f_{i-2}\]组合数转移方程:\[C(n,m)=C(n-1,m-1)+C(n-1,m)\]\[C(n,0)=1\]杨辉三角:\[f[i][j]=f[i-1][j-1]+f[i-1]......
  • 24暑假集训day5下午
    DFS本质:一种用于遍历或搜索树或图的算法。所谓深度优先,就是说每次都尝试向更深的节点走。该算法讲解时常常与BFS并列,但两者除了都能遍历图的连通块以外,用途完全不同,很少有能混用两种算法的情况。关键:递归调用自身对其访问过的点打上访问标记,在遍历图时跳过已打过标记的点,以......