Codeforces_442_A_枚举
http://codeforces.com/problemset/problem/442/A
想想成5*5的图,一共能划10条线,枚举2^10次即可。
判断每种情况是否符合条件的方法,若存在点,被线穿过的状态一样,当时不是同一个点,则不符合。
#include <cstdio>
#include<iostream>
#include<string>
#include<cstring>
using namespace std;
int color[],num[],temp[],count[] = {};
string s;
int main()
{
int n;
cin >> n;
for(int i = ;i <= n;i++)
{
cin >> s;
if(s[] == 'R') color[i] = ;
else if(s[] == 'G') color[i] = ;
else if(s[] == 'B') color[i] = ;
else if(s[] == 'Y') color[i] = ;
else if(s[] == 'W') color[i] = ;
num[i] = s[]-'';
}
int ans = ;
for(int i = ;i < (<<);i++)
{
memset(temp,,sizeof(temp));
if(i)
count[i] = count[i>>]+(i&);
for(int j = ;j <= n;j++)
{
if((i>>color[j])&)
temp[j] |= <<color[j];
if((i>>(num[j]+))&)
temp[j] |= <<(num[j]+);
for(int k = ;k < j;k++)
{
if(temp[j] == temp[k] && (color[k] != color[j] || num[j] != num[k]))
goto there;
}
}
ans = min(ans,count[i]);
there:
continue;
}
cout << ans << endl;
return ;
}
Codeforces_442_A_枚举的更多相关文章
- Swift enum(枚举)使用范例
//: Playground - noun: a place where people can play import UIKit var str = "Hello, playground& ...
- 编写高质量代码:改善Java程序的151个建议(第6章:枚举和注解___建议88~92)
建议88:用枚举实现工厂方法模式更简洁 工厂方法模式(Factory Method Pattern)是" 创建对象的接口,让子类决定实例化哪一个类,并使一个类的实例化延迟到其它子类" ...
- Objective-C枚举的几种定义方式与使用
假设我们需要表示网络连接状态,可以用下列枚举表示: enum CSConnectionState { CSConnectionStateDisconnected, CSConnectionStateC ...
- Help Hanzo (素数筛+区间枚举)
Help Hanzo 题意:求a~b间素数个数(1 ≤ a ≤ b < 231, b - a ≤ 100000). (全题在文末) 题解: a~b枚举必定TLE,普通打表MLE,真是头疼 ...
- 枚举:enum
枚举 所谓枚举就是指定好取值范围,所有内容只能从指定范围取得. 例如,想定义一个color类,他只能有RED,GREEN,BLUE三种植. 使用简单类完成颜色固定取值问题. 1,就是说,一个类只能完成 ...
- .NET 基础一步步一幕幕[方法、结构、枚举]
方法.结构.枚举 方法: 将一堆代码进行重用的一种机制. 语法: [访问修饰符] 返回类型 <方法名>(参数列表){ 方法主体: } 返回值类型:如果不需要写返回值,写void 方法名:P ...
- Asp.Net 将枚举类型(enum)绑定到ListControl(DropDownList)控件
在开发过程中一些状态的表示使用到枚举类型,那么如何将枚举类型直接绑定到ListControl(DropDownList)是本次的主题,废话不多说了,直接代码: 首先看工具类代码: /// <su ...
- 用枚举enum替代int常量
枚举的好处: 1. 类型安全性 2.使用方便性 public class EnumDemo { enum Color{ RED(3),BLUE(5),BLACK(8),YELLOW(13),GREEN ...
- c#编程基础之枚举
枚举的意义就在于限制变量取值范围. 当可以确定的几种取值时才可以用. 如果输入一个字符串需要进行判断是否是我们需要的字符串时,则一般需要这样写: using System; using System. ...
随机推荐
- 解决elment 动态多选框组(el-checkbox-group)无法设置默认值问题
<el-checkbox-group v-model="form.showProperty"> <el-checkbox v-for="(item,id ...
- vue设置选中时的样式名称
第一种方式:在router中全局设置 export default new Router({ mode:'history', linkActiveClass:'index', routes: [ { ...
- stars-one原创工具——m3u8视频下载合并器(kotlin)
一款可以下载m3u8.解密ts文件及合并ts文件的视频下载工具 蓝奏云下载地址 github地址 软件对你有帮助的话,不妨赞赏一波!感谢! 程序说明 采用多线程下载,可有效的提高下载速度 内置解密程序 ...
- 如何获取scrimba内部(内联框架)中网页地址?
看图: 将其在新窗口打开 方法一:按下F12 键 (打开 开发者工具) ,再照图中箭头用鼠标点击所示, 图中粗红下划线为该页面的URL 地址, 复制在新窗口打开即可 方法二:利用JS代码手动获取 ...
- Greedy Gift Givers 贪婪的送礼者 USACO 模拟
1002: 1.1.2 Greedy Gift Givers 贪婪的送礼者 时间限制: 1 Sec 内存限制: 128 MB提交: 9 解决: 9[提交] [状态] [讨论版] [命题人:外部导入 ...
- 7月17日刷题记录 分治Getting!循环比赛日程表
通过数:1 ┭┮﹏┭┮ qdoj.xyz 1053 分治-循环比赛日程表 其实今天晚上留给编程的时间并不多,做出一道... 不过收获还是非常大的 毕竟本人从来没有学习过分治算法,今天竟然攻克了我人生中 ...
- dp-最大递增子段和
Nowadays, a kind of chess game called “Super Jumping! Jumping! Jumping!” is very popular in HDU. M ...
- git 删除和复制远程分支 储藏
不常用到命令经常查,特别记录,方便自己开箱即用. 1. 删除本地分支 git branch -D <dev> 2. 删除远程分支 git push origin --delete < ...
- Java数组合并方法学习。
参考博客: https://blog.csdn.net/liu_005/article/details/72760392 https://blog.csdn.net/jaycee110905/arti ...
- GP工作室的项目计划书
目录 零点六一八--项目计划书 一.团队简介 1.1团队名称:GP工作室(Gold Point Studio) 1.2团队成员 1.3成员简介 1.4团队特色 二.项目介绍 2.1项目名称: 零点六一 ...