Codeforces Round #192 (Div. 2)
吐槽一下,这次的CF好简单啊。 可是我为什么这么粗心这么大意这么弱。把心沉下来,想想你到底想做什么!
A
题意:O(-1)
思路:O(-1)
#include <iostream>
#include <cstdio>
#include <cmath>
#include <algorithm>
#include <cstring>
using namespace std; int main()
{
string s[];
int mp[][];
int n, m;
while(cin >> n >> m)
{
memset(mp,,sizeof(mp));
for(int i=; i<n; i++)
cin >> s[i];
for(int i=; i<n; i++)
{
int cnt=;
for(int j=; j<m; j++)
if(s[i][j]!='S') cnt++;
if(cnt==m)
{
for(int j=; j<m; j++) mp[i][j]=;
}
}
for(int i=; i<m; i++)
{
int cnt=;
for(int j=; j<n; j++)
if(s[j][i]!='S') cnt++;
if(cnt==n)
{
for(int j=; j<n; j++) mp[j][i]=;
}
}
int sum=;
for(int i=; i<n; i++)
for(int j=; j<m; j++)
if(mp[i][j]) sum++;
cout << sum <<endl;
}
}
B
题意:有n个城市,然后给定m对城市不可建路,一个城市到另一个城市最多经过两条路,问你如何建路。
思路:两个城市之间的距离最多为2说明一条线上最多三个点,且有一点必须再所有三个点的中心。找出一个没有在不可连接的城市的点(因为0<M<N/2).
#include <iostream>
#include <cstdio>
#include <cmath>
#include <algorithm>
#include <cstring>
#include <map>
using namespace std; const int maxn=;
int que[*maxn]; int main()
{
int n, m;
while(cin >> n >> m)
{
map<int,int>mp;
int num=;
for(int i=; i<m; i++)
{
int u, v;
cin >>u >> v;
mp[u]=;
mp[v]=;
}
int tp;
for(int i=; i<=n; i++)
if(!mp[i]) tp=i;
cout << n- <<endl;
for(int i=; i<=n; i++)
{
if(i!=tp) cout << i << " " << tp <<endl;
}
}
return ;
}
C
题意:O(-1)
思路:开始想复杂了,想成n皇后问题。其实这题想想也就很水的一题,对每行分析,每行能找出一个空点就是可行解,如果有一行找不到,就对每列找,每列能找到一个空点就是可行解。很水的一题,开始写成了N皇后问题,然后再源代码上改的,最后挂了,悲剧,为什么就懒这一些重新写两个for循环不就好了么,下次不能偷懒了。
#include <iostream>
#include <cstdio>
#include <cmath>
#include <algorithm>
#include <cstring>
using namespace std; const int maxn=;
int a[maxn][maxn], b[maxn]
string s[]; int main()
{
int n;
while(cin >> n)
{
for(int i=; i<n; i++) cin >> s[i];
int top=, flag=;
for(int i=; i<n; i++)
for(int j=; j<n; j++)
if(s[i][j]=='.')
{
top++;
break;
}
if(top==n)
{
flag=;
for(int i=; i<n; i++)
for(int j=; j<n; j++)
if(s[i][j]=='.')
{
cout << i+ << " " << j+ <<endl;
break;
}
}
top=;
for(int j=; j<n; j++)
for(int i=; i<n; i++)
if(s[i][j]=='.')
{
top++;
break;
}
if(top==n&&!flag)
{
flag=;
for(int j=; j<n; j++)
for(int i=; i<n; i++)
if(s[i][j]=='.')
{
cout << i+ << " " << j+ <<endl;
break;
}
}
if(!flag) puts("-1");
}
return ;
}
/*
3
EEE
...
...
*/
D:
题意:屌丝从起点S出发去终点E找女神,途中可能会遇见情敌,问屌丝最少能遇见几个情敌。
思路:开始看错了题,以为题目要求最少要遇见一个情敌,然后用了两次广搜,起点和终点分别搜一次。题目木有这么要求啊啊啊啊啊啊啊 O.O O.O O.O。
下次能再给我大意一点么!这题不用想得太复杂,不管这么走,屌丝和情敌都往女神那里走,情敌先到女神那里就一定能遇见屌丝然后干一架,从终点广搜一次就够了。
#include <iostream>
#include <cstdio>
#include <cmath>
#include <algorithm>
#include <cstring>
#include <queue>
using namespace std; const int maxn=;
char map[][];
long long a[maxn][maxn],visit[maxn][maxn];
int n, m, si, sj, di, dj;
int dir[][]= {,,,-,,,-,}; struct node
{
int x, y;
long long time;
} f[maxn*maxn]; void bfs(int st, int sd)
{
queue<node>q;
memset(visit,,sizeof(visit));
node s, p;
s.x=st, s.y=sd, s.time=;
q.push(s);
while(!q.empty())
{
p=q.front();
q.pop();
for(int i=; i<; i++)
{
s.x=p.x+dir[i][];
s.y=p.y+dir[i][];
s.time=p.time+;
if(<=s.x&&s.x<=n&&<=s.y&&s.y<=m&&map[s.x][s.y]!='T'&&!visit[s.x][s.y])
{
visit[s.x][s.y]=;
a[s.x][s.y]=s.time;
q.push(s);
}
}
}
} int main()
{
while(cin >> n >> m)
{
int num=;
for(int i=; i<=n; i++)
{
scanf("%s",map[i]+);
for(int j=; j<=m; j++)
{
if(map[i][j]=='S') si=i, sj=j;
else if(map[i][j]=='E') di=i, dj=j;
else if(''<map[i][j]&&map[i][j]<='')
{
f[num].x=i;
f[num].y=j;
num++;
}
}
}
memset(a,,sizeof(a));
bfs(di,dj);
long long sum=;
for(int i=; i<num; i++)
{
int x=f[i].x, y=f[i].y;
if(a[x][y]<=a[si][sj]&&a[x][y]) sum+=map[x][y]-'';
}
cout << sum <<endl;
}
return ;
}
E:
不会。
Codeforces Round #192 (Div. 2)的更多相关文章
- Codeforces Round #192 (Div. 1) C. Graph Reconstruction 随机化
C. Graph Reconstruction Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/3 ...
- Codeforces Round #192 (Div. 1) B. Biridian Forest 暴力bfs
B. Biridian Forest Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/329/pr ...
- Codeforces Round #192 (Div. 1) A. Purification 贪心
A. Purification Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/329/probl ...
- [Codeforces Round #192 (Div. 2)] D. Biridian Forest
D. Biridian Forest time limit per test 2 seconds memory limit per test 256 megabytes input standard ...
- Codeforces Round #192 (Div. 2) (330B) B.Road Construction
题意: 要在N个城市之间修建道路,使得任意两个城市都可以到达,而且不超过两条路,还有,有些城市之间是不能修建道路的. 思路: 要将N个城市全部相连,刚开始以为是最小生成树的问题,其实就是一道简单的题目 ...
- Codeforces Round #192 (Div. 2) (330A) A. Cakeminator
题意: 如果某一行没有草莓,就可以吃掉这一行,某一列没有也可以吃点这一列,求最多会被吃掉多少块蛋糕. //cf 192 div2 #include <stdio.h> #include & ...
- Codeforces Round #192 (Div. 2) A. Cakeminator
#include <iostream> #include <vector> using namespace std; int main(){ int r,c; cin > ...
- Codeforces Round #192 (Div. 2) B. Road Construction
#include <iostream> #include <vector> using namespace std; int main(){ int n,m; cin > ...
- Codeforces Round #192 (Div. 2) (329A)C.Purification
题意: 在一个正常的点可以净化该行该列的所有细胞,判断是否可以净化所有的细胞,并且输出所选的点. 思路: 如果可以的话,一定会选n个点. 先判断每一行是否有正常细胞,然后判断每一列是否有,如果都没有肯 ...
随机推荐
- Understanding, Operating and Monitoring Apache Kafka
Apache Kafka is an attractive service because it's conceptually simple and powerful. It's easy to un ...
- JAVA Day2
标识符(类名:变量.属性.方法名: ) 组成:类名开头不能是数字,只能有字母数字_$组成. 命名规范: 类名每一个单词首字母大写(HelloWorld大驼峰法则) ...
- windows加入path路径
右键我的电脑,属性:高级系统设置,高级,环境变量:在系统变量中选path,编辑:将python安装路径加入即可(注意分号):
- C# 枚举(enum)
public enum EnumStatus { On=0, Off=1 } //获取值:0 Convert.ToInt32(EnumStatus.On); //获取On EnumStatus.On; ...
- java读取properties配置文件信息
一.Java Properties类 Java中有个比较重要的类Properties(Java.util.Properties),主要用于读取Java的配置文件,各种语言都有自己所支持的配置文件,配置 ...
- JQuery学习之语法
1.JQuery语法就是通过选取HTML元素,并对选取的元素执行某些操作: 基础语法:$(selector).action() (1)美元符号定义jQuery (2)选择符(selector)查询和查 ...
- poj 2774 Long Long Message 后缀数组基础题
Time Limit: 4000MS Memory Limit: 131072K Total Submissions: 24756 Accepted: 10130 Case Time Limi ...
- 记一次Runtime的巧用
背景 我们的视频直播是用的大华乐橙的解决方案,而他们近期出来个新的SDK,并且对老版SDK不兼容,而这周,终于把大华乐橙的新版SDK切换了,和这一周做的新的东西,一起提交审核了,并且今天也通过审核了. ...
- eclipse下Android无法自动生成apk文件怎么办?
eclipse下Android无法自动生成apk文件怎么办? 现象:创建android工程后,通过手动build/clean或自动build均无法在bin文件夹下生成.apk文件 解决方法:进入win ...
- sparklyr包--实现R与Spark接口
1.sparklyr包简介 Rstudio公司发布的sparklyr包具有以下几个功能: 实现R与Spark的连接: sparklyr包提供了一个完整的dplyr后端,可筛选并聚合Spark数据集,接 ...