Codeforces Round #133 (Div. 2), A.【据图推公式】 B.【思维+简单dfs】
A Tiling with Hexagons

题意: 给出a b c ,求里面有多少个六边形
题解:将六边形补全为平行四边形,如图b c延长,把a覆盖,直接底*高 - 2* 补全的小三角形
#include <iostream> using namespace std; int main()
{
int a, b, c;
cin >> a >> b >> c;
cout << (b+a-1)*(c+a-1)-a*(a-1)<<endl;
return 0;
}
B Forming Teams
题意:n个人,组成两个队,不能让敌人在一起。共n个人,m对敌人,每个人最多两个敌人。我们可以去一些人使两队人数相等且没有敌人在一起,求最少去多少人。
题解:有三种情况1.单边 2.双数环 3.单数环 对于1和2是可以平均分到两队的,而3就需要去掉一个人,还有就是最后的人数要是双数。
#include <iostream> using namespace std; int n, res = 0;
int a[110][110];
void dfs(int init, int x, int num)
{
int flag = 0;
for(int i = 1; i <= n; i ++)
{
if(a[x][i] == 1)
{
a[x][i] = 0;
a[i][x] = 0;
if(i == init)
{
flag = 2;
num ++;
break;
}
dfs(init, i, num+1);
}
}
if(flag==2 && num > 2 && num%2==1)
res ++;
} int main()
{
int m;
cin >> n >> m;
while(m --)
{
int x, y;
cin >> x >> y;
a[x][y] = 1;
a[y][x] = 1;
} for(int i = 1; i <= n; i ++)
{
dfs(i, i, 0);
}
if((n-res)%2)res++;
cout << res <<endl;
return 0;
}
Codeforces Round #133 (Div. 2), A.【据图推公式】 B.【思维+简单dfs】的更多相关文章
- Codeforces Round #529 (Div. 3) E. Almost Regular Bracket Sequence (思维)
Codeforces Round #529 (Div. 3) 题目传送门 题意: 给你由左右括号组成的字符串,问你有多少处括号翻转过来是合法的序列 思路: 这么考虑: 如果是左括号 1)整个序列左括号 ...
- Codeforces Round #133 (Div. 2)
A. Tiling with Hexagons 看成大三角形扣去3个小三角形. B. Forming Teams 由于每个点的度数不超过2,所以最后每个点要么在一条链上要么在一个环上. 在环上的话,每 ...
- Codeforces Round #271 (Div. 2) D. Flowers (递推)
题目链接:http://codeforces.com/problemset/problem/474/D 用RW组成字符串,要求w的个数要k个连续出现,R任意,问字符串长度为[a, b]时,字符串的种类 ...
- Codeforces Round #600 (Div. 2) D题【并查集+思维】
题意:给你n个点,m条边,然后让你使得这个这个图成为一个协和图,需要加几条边.协和图就是,如果两个点之间有一条边,那么左端点与这之间任意一个点之间都要有条边. 思路:通过并查集不断维护连通量的最大编号 ...
- Codeforces Round #509 (Div. 2) F. Ray in the tube(思维)
题目链接:http://codeforces.com/contest/1041/problem/F 题意:给出一根无限长的管子,在二维坐标上表示为y1 <= y <= y2,其中 y1 上 ...
- Codeforces Round #671 (Div. 2) B. Stairs (递推)
题意:一个台阶由一些单元格组成,如果一个高度为\(n\)的台阶中有\(n\)个不相邻的正方形(如图中的样例),就称这个台阶是"好台阶",现给你\(x\)个单元格,问最多能组成多少个 ...
- Codeforces Round #703 (Div. 2)__ B. Eastern Exhibition__ 纯纯的思维
原题链接https://codeforces.com/contest/1486/problem/B 题目 解题思路 这是个思维题, 算是货仓选址的变式, 想要到达各个点距离最小,我们的目标可以化为先 ...
- Codeforces Round #553 (Div. 2)B. Dima and a Bad XOR 思维构造+异或警告
题意: 给出一个矩阵n(<=500)*m(<=500)每一行任选一个数 异或在一起 求一个 异或在一起不为0 的每行的取值列号 思路: 异或的性质 交换律 x1^x2^x3==x3^x2 ...
- Codeforces Round #358 (Div. 2)——C. Alyona and the Tree(树的DFS+逆向思维)
C. Alyona and the Tree time limit per test 1 second memory limit per test 256 megabytes input standa ...
随机推荐
- 在微信小程序中使用 echarts 图片-例 折线图
首先进入echarts官方[https://echarts.apache.org/handbook/zh/get-started/].这边只需要在小程序中简单应用一下echarts折线图 所以不需要把 ...
- Git-rebase使用原理
使用 Git 已经好几年了,却始终只是熟悉一些常用的操作.对于 Git Rebase 却很少用到,直到这一次,不得不用. 一.起因 上线构建的过程中扫了一眼代码变更,突然发现,commit 提交竟然多 ...
- AVRmega16 LED 例程
AVRmega16 LED 例程 ...
- Map的野路子
首先有一张user数据表,数据库名称为mybatis,数据如下: 我们使用以下两种方式实现数据更新的操作. 方式一 UserMapper.java如下: /** * @description: 更改用 ...
- linklist template
#include <iostream.h> typedef int ElemType; typedef struct LNode { ElemType data; struct LNode ...
- java 打包部署(一) windows
- LCS&&LRC&&LIS问题
注:最近笔试题经常碰到DP动态规划的问题,但是由于本人没有接触过DP,笔试后看到别人家的答案简洁又漂亮,真的羡慕:难的DP自己可能不会,那再见到常见的LCS和LRS以及LIS为问题总该会吧: 资料参考 ...
- String、StringBuiler、StringBuffer的区别
一.三者的区别概述 1.可变与不可变:String底层使用final修饰的字符数组来存储字符串,它属于不可变类,对String对象的任何改变操作都不会改变原对象,而是生成一个新对象.StringBui ...
- ArrayList、LinkedList、Vector、Array
ArrayList 本质是一个数组. 优势:追加元素到数组末尾的时候速度快,同时检索元素的速度也快. 劣势:如果要插入一个元素到数组之间慢:如果要追加的元素数量多于数组的容量,则需要频繁扩容使用Arr ...
- centos 7环境下安装部署zookeeper
近一直在看zookeeper的知识,有所收获,打算写些一些关于zookeeper的博客,也当做是自己的复习和笔记. 在上一篇 博客中简单地介绍了centos 7 下如何安装jdk,这一篇将介绍如何在c ...