1 条题解
-
0
自动搬运
来自洛谷,原作者为

Camellia_Spoil
浮生若梦,唯爱永痕搬运于
2025-08-24 23:15:41,当前版本为作者最后更新于2025-05-10 15:12:34,作者可能在搬运后再次修改,您可在原文处查看最新版自动搬运只会搬运当前题目点赞数最高的题解,您可前往洛谷题解查看更多
以下是正文
分析
简单模拟题。
在实现时将 为 时和 为 时别对应操作模拟即可。
$$q_k = 1$$,将用于标记颜色的 数组按题意修改即可。注意在修改前要判断该点是否被遮蔽
$$q_k =2$$,将题意描述的要被遮蔽的点挨个将其记录为被遮蔽即可。
AC Code
#include<bits/stdc++.h> #define int long long #define ull unsigned long long #define N 510 using namespace std; inline long long read() { long long x=0,f=1;char ch=getchar(); while (ch<'0'||ch>'9'){if (ch=='-') f=-1;ch=getchar();} while (ch>='0'&&ch<='9'){x=x*10+ch-48;ch=getchar();} return x*f; } int a[N][N],n,m,q,vis[N][N]; signed main(){ n=read();m=read();q=read(); while(q--) { int op,x,y,c; op=read(); if(op==1) { x=read();y=read();c=read(); if(vis[x][y]!=-1) a[x][y]=c; if(vis[x+1][y]!=-1) a[x+1][y]=c; if(vis[x][y+1]!=-1) a[x][y+1]=c; if(vis[x+1][y+1]!=-1) a[x+1][y+1]=c; } else { x=read();y=read(); vis[x][y]=vis[x+1][y]=vis[x][y+1]=vis[x+1][y+1]=-1; } } for(int i=1;i<=n;i++) { for(int j=1;j<=m;j++) { printf("%lld ",a[i][j]); } printf("\n"); } return 0; }
- 1
信息
- ID
- 11569
- 时间
- 2000ms
- 内存
- 1000MiB
- 难度
- 2
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者