-
个人简介
p12721
#include<bits/stdc++.h>
using namespace std;
int main()
{
int n,c; cin>>n>>c; int a=n,b=n; for(int i=1;i<=c;i++) { int x,y; cin>>x>>y; if (x>=a||y>=b) { continue; } int sh=x*b; int sv=a*y; if(sh>=sv) { a=x; } else { b=y; } } cout<<a*b<<endl; return 0;
}
海战
#include<bits/stdc++.h> using namespace std; int n,m,dx[4]={-1,1,0,0},dy[4]={0,0,-1,1},ans,sum,maxx=-100000,minx=100000,maxy=-100000,miny=100000; int vis[1005][1005]; char s[1005][1005]; void dfs(int x,int y) { for(int i=0;i<4;i++) { int xx=x+dx[i]; int yy=y+dy[i]; if(s[xx][yy]'#'&&xx>=1&&xx<=n&&yy>=1&&yy<=m) { minx=min(minx,xx); maxx=max(maxx,xx); miny=min(miny,yy); maxy=max(maxy,yy); sum++; s[xx][yy]='.'; dfs(xx,yy); } } } int main() { cin>>n>>m; for(int i=1;i<=n;i++) { for(int j=1;j<=m;j++) { cin>>s[i][j]; } } for(int i=1;i<=n;i++) { for(int j=1;j<=m;j++) { if(s[i][j]'#') { s[i][j]='.'; minx=i; miny=j; maxx=i; maxy=j; dfs(i,j); ans++; if((maxx-minx+1)*(maxy-miny+1)!=sum) { cout<<"Bad placement."; return 0; } } } } cout<<"There are "<<ans<<" ships."; return 0; }
-
通过的题目
-
最近活动
题目标签
- 模拟
- 14
- NOIP全国联赛普及组
- 13
- 其他
- 7
- 数学
- 6
- 字符串
- 4
- 搜索
- 3
- 2005
- 2
- 2007
- 2
- 2009
- 2
- 2010
- 2
- 2011
- 2
- 枚举
- 2
- 贪心
- 2
- 排序
- 2
- TL/一阶
- 2
- 2006
- 1
- 2008
- 1
- 2012
- 1
- 2014
- 1
- 蓝桥杯
- 1