bzoj3208:花神的秒题计划I
思路:因为Q、S、B操作总和不超过100,因此怎么暴力怎么写。。。。当然记忆化搜索还是要的
#include<cstdio>
#include<iostream>
#include<algorithm>
#include<cstring>
#include<cmath>
using namespace std;
#define maxn 705 const int lx[]={-1,0,1,0};
const int ly[]={0,-1,0,1}; int n,m;
int a[maxn][maxn],f[maxn][maxn];
bool can[maxn][maxn];
char s[10]; inline int read(){
int x=0;char ch=getchar();
for (;ch<'0'||ch>'9';ch=getchar());
for (;ch>='0'&&ch<='9';ch=getchar()) x=x*10+ch-'0';
return x;
} int dp(int x,int y){
if (!can[x][y]) return -n*n;
if (f[x][y]) return f[x][y];
f[x][y]=1;
for (int i=0;i<4;i++){
int nx=x+lx[i],ny=y+ly[i];
if (nx>0&&ny>0&&nx<=n&&ny<=n&&a[x][y]>a[nx][ny]) f[x][y]=max(f[x][y],dp(nx,ny)+1);
}
return f[x][y];
} int main(){
n=read();
for (int i=1;i<=n;i++)
for (int j=1;j<=n;j++)
a[i][j]=read();
m=read();memset(can,1,sizeof(can));
while (m--){
scanf("%s",s+1);
if (s[1]=='C'){int x=read(),y=read(),v=read();a[x][y]=v;}
if (s[1]=='S'){
int a=read(),b=read(),c=read(),d=read();
for (int i=a;i<=c;i++)
for (int j=b;j<=d;j++)
can[i][j]=0;
}
if (s[1]=='B'){
int a=read(),b=read(),c=read(),d=read();
for (int i=a;i<=c;i++)
for (int j=b;j<=d;j++)
can[i][j]=1;
}
if (s[1]=='Q'){
int ans=0;memset(f,0,sizeof(f));
for (int i=1;i<=n;i++)
for (int j=1;j<=n;j++)
ans=max(ans,dp(i,j));
printf("%d\n",ans);
}
}
return 0;
}
bzoj3208:花神的秒题计划I的更多相关文章
- bzoj3208: 花神的秒题计划Ⅰ
3208: 花神的秒题计划Ⅰ Time Limit: 16 Sec Memory Limit: 128 MBSubmit: 323 Solved: 211[Submit][Status] Desc ...
- BZOJ3208:花神的秒题计划Ⅰ(记忆化搜索DP)
Description 背景[backboard]: Memphis等一群蒟蒻出题中,花神凑过来秒题…… 描述[discribe]: 花花山峰峦起伏,峰顶常年被雪,Memphis打算帮花花山风景区 ...
- 【记忆化搜索】bzoj3208 花神的秒题计划Ⅰ
暴力 #include<cstdio> #include<cstring> #include<algorithm> using namespace std; #de ...
- bzoj 3208 花神的秒题计划I
bzoj 3208 花神的秒题计划I Description 背景[backboard]: Memphis等一群蒟蒻出题中,花神凑过来秒题-- 描述[discribe]: 花花山峰峦起伏,峰顶常年被雪 ...
- BZOJ-3208|记忆化搜索-花神的秒题计划Ⅰ
背景[backboard]: Memphis等一群蒟蒻出题中,花神凑过来秒题-- 描述[discribe]: 花花山峰峦起伏,峰顶常年被雪,Memphis打算帮花花山风景区的人员开发一个滑雪项目. 我 ...
- 【bzoj3208】花神的秒题计划Ⅰ
记忆化搜索 #include<algorithm> #include<iostream> #include<cstring> #include<cstdlib ...
- BZOJ 3208: 花神的秒题计划Ⅰ
这就是一道滑雪嘛= = 所有操作都爆力,求路径就dp,完了 CODE: #include<cstdio>#include<iostream>#include<algori ...
- bzoj 前100题计划
bzoj前100题计划 xz布置的巨大的坑.. 有空填题解... 1002 轮状病毒 用python手动matrixtree打表. #include<bits/stdc++.h> #def ...
- Codeforces刷题计划
Codeforces刷题计划 已完成:-- / -- [Codeforces370E]370E - Summer Reading:构造:(给定某些数,在空白处填数,要求不下降,并且相邻差值<=1 ...
随机推荐
- linux中文设置
近期出现用户发邮件乱码问题,前面服务器刚刚切换过来,忘了装中文字体了. 本地调试在windows环境下,所以每次看都好的,于是我看了下linux服务器的编码,果然默认的不是中文字体,所以在生成pdf的 ...
- eclipse项目导入到Android Studio Plugin with id 'android-library' not found
在主项目的build.gradle 中加入以下代码buildscript { repositories { mavenCentral() } dependencies { classpath 'com ...
- xcode6 升级到xcode7 产生的问题
当初作为第一个吃螃蟹的人,第一天就把xcode升级到了xcode7,结果报了一堆错,网上也没有解决方案,于是果断退到xcode6.这两天看时机成熟,升到了xcode7,在升级后,会有许多问题,在此罗列 ...
- 有关AES加密的问题
遇到一个项目,需要用AES加密密码,android的已经写好了,java源码: private static final String AES_OPTIONS = "AES/ECB/PKCS ...
- android常见错误-
将library中的报错项删除,然后点击[add]正确的appcompat
- Delphi获取目录下所有文件名
//获取一个文件夹下的所有文件 //不包括文件夹里面的文件 //ListBox1.Items:= searchfile('Z:\'); //注意,path后面要有'\'; function Sear ...
- [Practical Git] Navigate git command pager output with Unix less commands
When using a git command that can have a large amount of output (like git log, git diff, or git blam ...
- linux 内核之旅
http://www.kerneltravel.net/?p=534 http://mp.weixin.qq.com/mp/homepage?__biz=MzI3NzA5MzUxNA==&hi ...
- C# 指针(unsafe与fixed的使用)
c#在默认情况下生成的都是安全代码,即进行了代码托管(.NET的CLR机制好处之一是,进行代码托管,适时的释放内存,程序员便不必考虑资源的回收问题),而此时,指针不能出现在安全代码的编译条件下. 一. ...
- mvc_ajax_for form
在上一篇介绍MVC中的Ajax实现方法的时候,曾经提到了除了使用Ajax HTML Helper方式来实现之外,Jquery也是实现Ajax的另外一种方案. 通过get方法实现AJax请求 View ...