【模拟】I Like Matrix!
发布日期:2021-05-07 22:49:12 浏览次数:14 分类:原创文章

本文共 549 字,大约阅读时间需要 1 分钟。

给定 k 种移动方式:从 (i, j) 移动到 (i + xk, j + yk)(xk, yk > 0)。询问在一个 n ∗ m 的矩阵中,
从 (1, 1) 出发,可以到达多少个位置。

Input

第一行包含三个整数 n,m 和 k。
之后 k 行每行包含两个 xi 和 yi。

Output

共一行包含一个整数 ans,表示可以到达的位置个数。


随意的模拟。。。

#include<cstdio>#include<iostream>using namespace std;int n,m,k,a,b,x,y,ans[101][101],Ans;int main(){   	scanf("%d%d%d",&n,&m,&k);	ans[1][1]=1;	while(k--){   		scanf("%d%d",&a,&b);		for(int i=a+1;i<=n;++i)		  for(int j=b+1;j<=m;++j)		    ans[i][j]=max(ans[i][j],ans[i-a][j-b]);	} 	for(int i=1;i<=n;++i)	  for(int j=1;j<=m;++j)	    Ans+=ans[i][j];	printf("%d",Ans);}
上一篇:【DP】I Will Like Matrix!
下一篇:【模拟】I Liked Matrix!

发表评论

最新留言

哈哈,博客排版真的漂亮呢~
[***.90.31.176]2025年03月30日 18时29分40秒