连接:http://poj.org/problem?id=1054

题意:就是一个格子里一条线上最长有几个青蛙(青蛙间隔相同)~。但是其实青蛙的起点重点必须是在外面。

直接写一个搜就是。

 #include <stdio.h>
#include <string.h>
#include <iostream>
#include <algorithm>
#include <stdlib.h>
#include <vector>
#include <queue>
#include <stack>
#define loop(s,i,n) for(i = s;i < n;i++)
#define cl(a,b) memset(a,b,sizeof(a))
using namespace std;
int map[][];
int r,c,n;
struct node
{
int x,y;
}p[];
int cmp( struct node a, struct node b)
{
if(a.x == b.x)
return a.y < b.y;
return a.x < b.x;
}
int judge(int x,int y)
{
if(x >= && x <= r && y >= &&y <= c)
return ; return ; }
int find(struct node tmp,int dx,int dy)
{ int ans = ; int leap =;
while(judge(tmp.x+dx,tmp.y+dy))
{
if(map[tmp.x+dx][tmp.y+dy])
{
tmp.x+= dx,tmp.y += dy;
ans++;
}
else
{
leap = ;
break;
}
}
if(leap)
return ans;
return ;
}
int main()
{
while(~scanf("%d %d",&r,&c))
{
int i,j;
scanf("%d",&n); cl(map,);
for(i = ;i <= n;i++)
scanf("%d %d",&p[i].x,&p[i].y),map[p[i].x][p[i].y] = ; sort(p+,p+n+,cmp);
int ans = ;
for(i = ;i <= n;i++)
{ for(j = i+;j <= n;j++)
{ int dx,dy;
dx = p[j].x-p[i].x;
dy = p[j].y-p[i].y;
struct node tmp;
tmp = p[j];
if(judge(p[i].x-dx,p[i].y-dy))
continue;
int cnt = find(tmp,dx,dy); if(ans < cnt)
ans = cnt; }
}
if(ans < )
puts("");
else
printf("%d\n",ans);
}
return ;
}

最新文章

  1. 谷毅(WingKu)横空出世
  2. Atitit. 提升软件开发效率and 开发质量---java 实现dsl 4gl 的本质and 精髓 O725
  3. HTML模仿桌面
  4. WPF MVVM模式下的无阻塞刷新探讨
  5. 在WP8项目中使用ARMASM
  6. iOS 取得单张系统图片
  7. Windows 消息机制详解
  8. Codeforces Round #361 (Div. 2)
  9. eclipse中svn插件的安装
  10. Effective Java Item3:Enforce the singleton property with a private constructor or an enum type
  11. asp.net 页面执行过程
  12. [置顶] 编程模仿boost::function和boost::bind
  13. Ubuntu12.04环境搭建遇到的问题和建议(一个)
  14. Spring Boot 2.0 配置图文教程
  15. python - unittest 单元测试学习
  16. mybatis resultType resultMap 区别
  17. docker-java Docker的java API
  18. 关于函数式编程(Functional Programming)
  19. circRNA 中的ALU 重复元件
  20. c# 对话框控件

热门文章

  1. PL/SQL编程基础(五):异常处理(EXCEPTION)
  2. Oracle性能优化之Oracle里的统计信息
  3. render的几个应用
  4. JS模块化方案
  5. shell 环境变量的知识小结
  6. EasyUI Easyloader 加载器
  7. Underscore.js (1.7.0)-函数预览
  8. 概率图模型PFM——无向图
  9. Ubuntu下virtualenv 的安装及使用
  10. NodeJS学习笔记二