今天简直大爆发啊。。。

吃了顿烧烤竟然这么管事。

。。

本弱渣竟然做出来了3道,并且B题是我第一次在CF中用到算法。。(曾经最多也就是贪心。

)。

题目地址:codeforces#225

A题:

水题。。

不解释。。

5分钟1Y。

代码例如以下:

#include <iostream>
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <math.h>
#include <ctype.h>
#include<algorithm> using namespace std;
int main()
{
int n, m, i, j;
char s[200][200];
scanf("%d%d",&n,&m);
for(i=0;i<n;i++)
{
scanf("%s",s[i]);
}
for(i=0;i<n;i++)
{
for(j=0;j<m;j++)
{
if(s[i][j]=='-')
{
printf("-");
continue ;
}
if((i+j)%2)
{
printf("B"); }
else
printf("W");
}
printf("\n");
}
return 0;
}

B题:

这题第一次在CF中使用算法,刚開始还犹豫了一段时间,由于没见过在B题中就用到算法的,后来还是大胆的用上了。

并且还是并查集。。这题就是把能够反应的药品用并查集放在一块,这样分成了能够互不反应的几个集合。这种话,最少不能反应的就是每一个集合放进去的第一个,剩下的就是最多能够发生反应的药品数量。把数量求出来。如果是n,再求2^n就可以。

注意要用int64,第一次由于这个错了一次。

。不然就能进前100了。。。

sad。

代码例如以下:

#include <iostream>
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <math.h>
#include <ctype.h>
#include<algorithm> using namespace std;
int bin[100];
int find1(int x)
{
return bin[x]==x? x:bin[x]=find1(bin[x]);
}
void merge1(int x, int y)
{
int f1, f2;
f1=find1(x);
f2=find1(y);
if(f1!=f2)
{
if(f2>f1)
bin[f2]=f1;
else
bin[f1]=f2;
}
}
int main()
{
int n, m, i, j, a[100], x, y, b[100], z, num, nn;
__int64 s=1;
scanf("%d%d",&n,&m);
memset(a,0,sizeof(a));
memset(b,0,sizeof(b));
for(i=1;i<=n;i++)
bin[i]=i;
num=0;
nn=0;
while(m--)
{
scanf("%d%d",&x,&y);
merge1(x,y);
a[x]++;
a[y]++;
}
for(i=1;i<=n;i++)
{
if(a[i])
{
z=find1(i);
b[z]++;
num++;
}
}
for(i=1;i<=n;i++)
{
if(b[i])
{
nn++;
}
}
z=num-nn;
//printf("%d %d\n",num,nn);
for(i=1;i<=z;i++)
{
s*=2;
}
printf("%I64d\n",s);
return 0;
}

C题:

这题还是非常有意思的。。

第一次看完以为是什么最大密度子图。由于近期刷网络流,网络流的最小割能够求最大密度子图,可是还没学。。。。我还百度看了一会儿。

。后来想到能够贪心,先把两个点与相连的边值之比的最大值求出来,然后依次向外扩充,这样肯定可行,可是感觉非常麻烦。。并且复杂度有点悬。

。。但还是硬着头皮写了。然后当写完最大的那一边二点的值时。突然发现再往后扩充肯定越来越小。

。。然后自己YY了一下证明。。这样是能够证明的,于是果断提交。1Y~

代码例如以下:

#include <iostream>
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <math.h>
#include <ctype.h>
#include<algorithm> using namespace std;
int main()
{
int n, m, i, p[600], u, v, w;
double max1=0, x;
scanf("%d%d",&n,&m);
for(i=1;i<=n;i++)
scanf("%d",&p[i]);
while(m--)
{
scanf("%d%d%d",&u, &v,&w);
x=(p[u]+p[v])*1.0/w;
if(max1<x)
{
max1=x;
}
}
printf("%.15lf\n",max1);
return 0;
}

codeforces#254DIV2解题报告的更多相关文章

  1. Codeforces 524 解题报告

    打的很快乐的一次比赛hiahiahia, 才A掉4题rating就涨了100+ 距离比赛\(3\)天了, 由于博主实在太颓, 又补掉了\(E\)题, 到现在才发解题报告 A. 语法题, 读入输出就行了 ...

  2. codeforces 714C解题报告

    http://codeforces.com/contest/714/problem/C #include <bits/stdc++.h>//非递归形式建立字典树 using namespa ...

  3. Codeforces 652F 解题报告

    题意 有n只蚂蚁在长度为m个格子的环上,环上的格子以逆时针编号,每只蚂蚁每秒往它面向的方向移动一格.如果有两只蚂蚁相撞则相互调换方向,问t秒后每只蚂蚁的位置. 题解 首先通过观察可以发现 蚂蚁相撞产生 ...

  4. codeforces 476C.Dreamoon and Sums 解题报告

    题目链接:http://codeforces.com/problemset/problem/476/C 题目意思:给出两个数:a 和 b,要求算出 (x/b) / (x%b) == k,其中 k 的取 ...

  5. Codeforces Round #378 (Div. 2) D题(data structure)解题报告

    题目地址 先简单的总结一下这次CF,前两道题非常的水,可是第一题又是因为自己想的不够周到而被Hack了一次(或许也应该感谢这个hack我的人,使我没有最后在赛后测试中WA).做到C题时看到题目情况非常 ...

  6. Codeforces Round 665 赛后解题报告(暂A-D)

    Codeforces Round 665 赛后解题报告 A. Distance and Axis 我们设 \(B\) 点 坐标为 \(x(x\leq n)\).由题意我们知道 \[\mid(n-x)- ...

  7. Codeforces Round 662 赛后解题报告(A-E2)

    Codeforces Round 662 赛后解题报告 梦幻开局到1400+的悲惨故事 A. Rainbow Dash, Fluttershy and Chess Coloring 这个题很简单,我们 ...

  8. Codeforces Educational Round 92 赛后解题报告(A-G)

    Codeforces Educational Round 92 赛后解题报告 惨 huayucaiji 惨 A. LCM Problem 赛前:A题嘛,总归简单的咯 赛后:A题这种**题居然想了20m ...

  9. Codeforces Round #382 (Div. 2) 解题报告

    CF一如既往在深夜举行,我也一如既往在周三上午的C++课上进行了virtual participation.这次div2的题目除了E题都水的一塌糊涂,参赛时的E题最后也没有几个参赛者AC,排名又成为了 ...

随机推荐

  1. php防止sql注入漏洞代码 && 几种常见攻击的正则表达式

    注入漏洞代码和分析                                                                                           ...

  2. 自适应图片宽度的jQuery焦点幻灯轮播代码

    自适应图片宽度的jQuery焦点幻灯轮播代码 注意要1.7.2版本的jq才支持点击后显示点击的图片,不然就是一直顺序播放 演示   XML/HTML Code <div id="sli ...

  3. linux系统下调度数据库类型资源库中的kettle job

    已经存在kettle的一个资源库enfo,在目录/works/wxj下面有一个job (testmailsuccess.kjb)如何实现手工在kettle外部执行此job和让系统每天定时的调用此job ...

  4. 创建一个pre标签展开折叠的UI组件(原创)

    这些天练习UI组件的编写,顺便模仿一个h5版本的pre标签收缩展开的效果组件: 兼容ie8.9,谷歌,火狐: 图片效果如下: demo.html代码: <!DOCTYPE html> &l ...

  5. Nginx学习笔记(三)------配置文件nginx.conf说明

    #user nobody; #开启进程数 <=CPU数  worker_processes ; #错误日志保存位置 #error_log logs/error.log; #error_log l ...

  6. Activiti Designer 5.14.1插件安装和使用

    1.离线包下载 离线安装包下载:https://files.cnblogs.com/files/modou/Activiti_BPMN_2.0_designer.rar 2.安装 先把jars文件夹中 ...

  7. LoadRunner Controller: 压力机

    前提条件 1. 压力机所在的机器上装了LR agent ,并启用了. 运行下图所示程序,即可启动.启动之后状态栏会出现卫星小图标 2. Controller所在机器的RPC服务开启. 打开运行 –&g ...

  8. 使用JSP实现输出(web基础学习笔记二)

    Jsp:Java Server Page 服务器端的Java页面,动态网页技术 jsp注释 显式注释:这种注释客户端是允许看见的;<!--html注释--> 隐式注释:这种注释客户端是看不 ...

  9. RESTful到底是什么玩意??

      0. REST不是"rest"这个单词,而是几个单词缩写.: 1. REST描述的是在网络中client和server的一种交互形式:REST本身不实用,实用的是如何设计 RE ...

  10. 解决 /dev/mapper/* 100%

    1.查看大文件位置du -sh /* | sort -nr 2.分析,处理文件