HDU 5228 ZCC loves straight flush 暴力
题目链接:
hdu:http://acm.hdu.edu.cn/showproblem.php?pid=5228
bc(中文):http://bestcoder.hdu.edu.cn/contests/contest_chineseproblem.php?cid=582&pid=1001
题解:
首先可以先考虑花色,把输入按照花色分组,对于每种花色同花顺的情况只有十种:(1,2,3,4,5)~(10,11,12,13,1),然后对每种花色的每种同花顺都对照一下,看看当前的牌有几张不在里面,这几张牌就是我们要替换的了,全部的情况都跑一遍取最小值。
代码:
#include<iostream>
#include<cstdio>
#include<cstring>
#include<vector>
#include<algorithm>
using namespace std; const int maxn=;
const int INF=0x3f3f3f3f; //mat[i]表示第i种同花顺的状态
int mat[maxn][maxn]; //输入按花色分组
vector<int> arr[maxn]; void get_mat(){
memset(mat,,sizeof(mat));
for(int i=;i<;i++){
for(int j=;j<;j++){
mat[i][(i+j)%+]=true;
}
}
} //暴力枚举
void solve(int cur,int *ma,int &ans){
int cnt=;
for(int i=;i<arr[cur].size();i++){
int x=arr[cur][i];
if(ma[x]) cnt++;
}
ans=min(ans,-cnt);
} void init(){
for(int i=;i<maxn;i++) arr[i].clear();
} int main(){
get_mat();
int tc;
scanf("%d",&tc);
while(tc--){
init();
char ch[];
for(int i=;i<;i++){
scanf("%s",ch);
if(ch[]!='\0'){
int tmp=(ch[]-'')*+ch[]-'';
arr[ch[]-'A'].push_back(tmp);
}
else arr[ch[]-'A'].push_back(ch[]-'');
}
int ans=INF;
for(int i=;i<;i++){
for(int j=;j<;j++){
solve(i,mat[j],ans);
}
}
printf("%d\n",ans);
}
return ;
}
HDU 5228 ZCC loves straight flush 暴力的更多相关文章
- HDU 5228 ZCC loves straight flush( BestCoder Round #41)
题目链接:pid=5228">ZCC loves straight flush pid=5228">题面: pid=5228"> ZCC loves s ...
- hdu 5288 ZCC loves straight flush
传送门 ZCC loves straight flush Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/65536 K ...
- 暴力 BestCoder Round #41 1001 ZCC loves straight flush
题目传送门 /* m数组记录出现的花色和数值,按照数值每5个搜索,看看有几个已满足,剩下 5 - cnt需要替换 ╰· */ #include <cstdio> #include < ...
- HDU 4876 ZCC loves cards(暴力剪枝)
HDU 4876 ZCC loves cards 题目链接 题意:给定一些卡片,每一个卡片上有数字,如今选k个卡片,绕成一个环,每次能够再这个环上连续选1 - k张卡片,得到他们的异或和的数,给定一个 ...
- hdu 4876 ZCC loves cards(暴力)
题目链接:hdu 4876 ZCC loves cards 题目大意:给出n,k,l,表示有n张牌,每张牌有值.选取当中k张排列成圈,然后在该圈上进行游戏,每次选取m(1≤m≤k)张连续的牌,取牌上值 ...
- hdu 4873 ZCC Loves Intersection(大数+概率)
pid=4873" target="_blank" style="">题目链接:hdu 4873 ZCC Loves Intersection ...
- HDU 4873 ZCC Loves Intersection(可能性)
HDU 4873 ZCC Loves Intersection pid=4873" target="_blank" style="">题目链接 ...
- hdu 4882 ZCC Loves Codefires(数学题+贪心)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4882 ------------------------------------------------ ...
- HDU 4882 ZCC Loves Codefires (贪心)
ZCC Loves Codefires 题目链接: http://acm.hust.edu.cn/vjudge/contest/121349#problem/B Description Though ...
随机推荐
- mysql 基本的操作数据库命令
注意:命令操作都是分号结尾 1 .连接mysql: mysql -u 用户名 -p 密码 2.展示所有数据库: show databases; 3.进入数据库: use 数据库名字; 4. ...
- 手动封装一个属于自己的AJAX类库
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- conda与pip的关系
最近在搭建平台的时候,遇到了conda,具体尝试使用之后觉得conda还是非常好用的.他会交代清楚相互有依赖的包是什么,确认之后才会执行指令.要比pip好很多. 普通按照python 的时候一般都是自 ...
- 《转》Pycharm创建py文件时自定义头部模板
File->settings->Editor->File and Code Templates->Python Script #!/usr/bin/env python # - ...
- Linux命令—tar
day 7:tar压缩.解压缩.打包.解包命令 区分打包和压缩:打包是指将一大堆文件或目录变成一个总的文件:压缩则是将一个大的文件通过一些压缩算法变成一个小文件. 为什么要区分这两个概念呢?这源于Li ...
- x01.os.24: 来点代码
<Orange'S 一个操作系统的实现>源代码 <Linux 0.11 内核完全注释>源代码 linux-0.12 源代码: 解决了 Not Owner 问题 闲来无事,在 ...
- Linux入门进阶第四天(下)——程序管理(补充内容)
1.PID 触发任何一个事件时,系统都会将他定义成为一个程序,并且给予这个程序一个 ID ,称为 PID,同时依据启发这个程序的使用者与相关属性关系,给予这个 PID 一组有效的权限设置. 同一个程序 ...
- 20155220 2016-2017-2《java程序设计》第三周学习总结
教材学习内容总结 1.注意java与c语言的区别,在java中,数组是一个对象. 2.了解java.util.Scanner和java.math.BigDecimal这两个标准类 3.System.a ...
- 20155319 《Java程序设计》实验五(网络编程与安全)实验报告
20155319 <Java程序设计>实验五(网络编程与安全)实验报告 一.实验内容及步骤 (一) 两人一组结对编程 参考http://www.cnblogs.com/rocedu/p/6 ...
- 20155336 实验三 敏捷开发与XP实践
20155336 实验三 敏捷开发与XP实践 实验内容 XP基础 XP核心实践 相关工具 实验内容及步骤 (一)编码标准:在IDEA中使用工具(Code->Reformate Code)把代码重 ...