题意比较复杂 (但是很好理解)

大概意思是给你等边三角形(详见题目中的图)。

最后一行有n个数,下一次要填的数是c。

里面预先已经填好了数字。(0为未填)

得分的标准是这个分数的连通块周围没有空的地方。 就能得到连通块大小的分。

失分是 当前块能得分,但不巧,当前块内的数字是要填的数字。就失去连通块大小的分。

求这次填块最多可以得多少分。

不能不填,即分数可以为负。

思路:

其实这个题并不难。

枚举所有没有填过的块。暴搜一遍。。。 搞定。

// by SiriusRen
#include <cstdio>
#include <cstring>
#include <algorithm>
#define ff for(int i=1;i<=n;i++)for(int j=1;j<=i;j++)
using namespace std;
int n,c,vis[11][11],a[11][11],xx[]={1,0,-1,0,-1,1,0},yy[]={0,1,0,-1,-1,1,0},cnt,flag,temp,ans;
bool check(int x,int y){return x>=1&&y<=x&&y>=1&&x<=n;}
void dfs(int x,int y,int t){
vis[x][y]=1;cnt++;
for(int i=0;i<6;i++){
int dx=x+xx[i],dy=y+yy[i];
if(!vis[dx][dy]&&check(dx,dy)){
if(a[dx][dy]==t)dfs(dx,dy,t);
else if(!a[dx][dy])flag=1;
}
}
}
int main(){
while(scanf("%d%d",&n,&c)&&(n||c)){
ans=-0x3fffffff;
ff scanf("%d",&a[i][j]);
ff if(!a[i][j]){
memset(vis,0,sizeof(vis));
a[i][j]=c;
temp=0;
for(int k=0;k<=6;k++){
cnt=flag=0;
int dx=i+xx[k],dy=j+yy[k];
if(check(dx,dy)&&!vis[dx][dy]&&a[dx][dy])dfs(dx,dy,a[dx][dy]);
if(!flag){
if(a[dx][dy]==c)temp-=cnt;
else temp+=cnt;
}
}
ans=max(ans,temp);
a[i][j]=0;
}
printf("%d\n",ans);
}
}

一不小心还进了Code Length前三 哈哈哈哈

POJ 1414 暴搜的更多相关文章

  1. POJ 1945 暴搜+打表 (Or 暴搜+判重)

    思路: 呃呃 暴搜+打表 暴搜的程序::稳稳的TLE+MLE (但是我们可以用来打表) 然后我们就可以打表过了 hiahiahia 可以证明最小的那个数不会超过200(怎么证明的我也不知道),然后就直 ...

  2. POJ 3188暴搜

    题意: 思路: 裸的暴搜 --. 但是要注意如果你不用所有的按键就能输出最优解的话一定要把所有的字母都安排到一个位置-. 我的一群PE就是这么来的-- 为什么写的人这么少-- // by Sirius ...

  3. POJ 2132 暴搜OR Floyd

    题意: 给你一个邻接矩阵(n<=25)问所有1到2路径的gcd的lcm是多少. 一些经验(WA/TLE的经验): 1. 无脑暴搜 是会TLE的--. 2. 关于精度 dyf神牛说了:long l ...

  4. POJ 2133 暴搜

    题意: 思路: 按照题意暴搜 注意 如果目标串==给的串 答案是2 //By SiriurRen #include <cstdio> #include <cstring> #i ...

  5. POJ - 2676 暴搜 注意实现细节

    经典sudoku问题 按部就班就好 一定要注意细节 大于1还是大于等于1 r c越界判断 judge时0的特判 blabla居然磨了2个小时 改了很多地方所以实现得有点冗余,反正能A吧 /*H E A ...

  6. POJ 1543 暴搜

    题意:输出a^3=b^3+c^3+d^3的所有a,b,c,d的值. b,c,d由小到大且b,c,d都大于1. 思路: 按照题意写就好.... // by SiriusRen #include < ...

  7. POJ 1950暴搜

    思路: 暴力枚举好了..每回判断一下-- 用long long会超时 但是10^20会爆int... 不过仔细想一想 超过10^9的数肯定拼不回0啊-- 猥琐用int AC了 (当然可以打表 ) // ...

  8. poj 3080 Blue Jeans(水题 暴搜)

    题目:http://poj.org/problem?id=3080 水题,暴搜 #include <iostream> #include<cstdio> #include< ...

  9. [POJ 1204]Word Puzzles(Trie树暴搜&amp;AC自己主动机)

    Description Word puzzles are usually simple and very entertaining for all ages. They are so entertai ...

随机推荐

  1. (转载) popupWindow 指定位置上的显示

    popupWindow 指定位置上的显示 标签: androidpopupWindowpopupWindow具体位置放置 2014-07-09 16:23 1114人阅读 评论(0) 收藏 举报  分 ...

  2. css—各浏览器下的背景色渐变

    .linear{ width:100%; height:600px; FILTER: progid:DXImageTransform.Microsoft.Gradient(gradientType=0 ...

  3. SpringMVC(三)@PathVariable

    使用@PathVariable可以快速的访问,URL中的部分内容. ①. 在@RequestMapping的value中使用URI template({变量名}),然后在@RequestMapping ...

  4. 企业级任务调度框架Quartz(2)-下载和安装Quartz

    1.下载和安装 Quartz 根据资料上提供的网址http://www.opensymphony.com/quartz 我们可以下载到Quartz的最新版本1.6.4: 2.下载后包的说明       ...

  5. 安装oracle执行runInstaller文件时报错:“……/install/.oui:Permission denied”

    一:问题描述 二:出错原因 将windows下未解压的Oracle安装软件上传到了linux服务器,导致有三个文件的执行权限丢失. 三:解决方法 为其赋予相应权限即可. 1: [root@MyPc ~ ...

  6. java 1.8 内存告警问题

    Java HotSpot(TM) 64-Bit Server VM warning: ignoring option PermSize=512m; support was removed in 8.0 ...

  7. iOS,android 常用命令

    iOS 常用命令: https://blog.csdn.net/ilikekand17/article/details/81907179 https://www.jianshu.com/p/72c62 ...

  8. Laravel的路由功能

    只能在当前方法内加载视图和URL跳转!

  9. [2018.8.12]模拟赛B组

    T1 打表出奇迹,发现结论为\(E(a_n)=n+1\)即可. #include <iostream> #include <cstdio> #include <cctyp ...

  10. 1、Ansible初识简要介绍及安装

    1.Ansible简介 1.1 Ansible介绍 Ansible 是一个简单的自动化运维管理工具,基于Python开发,集合了众多运维工具(puppet.cfengine.chef.func.fab ...