[JSOI2007]麻将 模拟 BZOJ1028】的更多相关文章

题目描述 麻将是中国传统的娱乐工具之一.麻将牌的牌可以分为字牌(共有东.南.西.北.中.发.白七种)和序数牌(分为条子.饼子.万子三种花色,每种花色各有一到九的九种牌),每种牌各四张. 在麻将中,通常情况下一组和了的牌(即完成的牌)由十四张牌组成.十四张牌中的两张组成对子(即完全相同的两张牌),剩余的十二张组成三张一组的四组,每一组须为顺子(即同花色且序数相连的序数牌,例如条子的三.四.五)或者是刻子(即完全相同的三张牌).一组听牌的牌是指一组十三张牌,且再加上某一张牌就可以组成和牌.那一张加上…
[BZOJ1028][JSOI2007]麻将(贪心) 题面 BZOJ 洛谷 题解 感觉好久没打过麻将了,似乎都快不会打了. 这个数据范围看着就觉得是\(O(n^2m)\). 那么就枚举听哪张牌,然后枚举哪张是一对牌 考虑如何\(check\)剩下的牌是否能够构成顺子或者刻子(这叫法好别扭啊). 那就从前往后搞,能够组成刻子就全组了,不行就组顺子(平时打麻将似乎也是这样的,虽然只有\(4\)张相同的) #include<iostream> #include<cstdio> using…
1028: [JSOI2007]麻将 Time Limit: 1 Sec  Memory Limit: 162 MBSubmit: 1337  Solved: 601[Submit][Status][Discuss] Description 麻将是中国传统的娱乐工具之一.麻将牌的牌可以分为字牌(共有东.南.西.北.中.发.白七种)和序数牌(分为条子.饼子.万子三种花色,每种花色各有一到九的九种牌),每种牌各四张.在麻将中,通常情况下一组和了的牌(即完成的牌)由十四张牌组成.十四张牌中的两张组成对…
http://www.lydsy.com/JudgeOnline/problem.php?id=1028 枚举等待牌 枚举对是哪个 判断 #include<cstdio> #include<iostream> using namespace std; ],a[]; ],tot; void read(int &x) { x=; char c=getchar(); while(!isdigit(c)) c=getchar(); +c-'; c=getchar(); } } in…
1028: [JSOI2007]麻将 Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://www.lydsy.com/JudgeOnline/problem.php?id=1028 Description 麻将是中国传统的娱乐工具之一.麻将牌的牌可以分为字牌(共有东.南.西.北.中.发.白七种)和序数牌(分为条子.饼子.万子三种花色,每种花色各有一到九的九种牌),每种牌各四张.在麻将中,通常情况下一组和了的牌(即完成的牌)由十四张牌组成.十四张牌…
1028: [JSOI2007]麻将 Time Limit: 1 Sec  Memory Limit: 162 MBSubmit: 1270  Solved: 576[Submit][Status][Discuss] Description 麻将是中国传统的娱乐工具之一.麻将牌的牌可以分为字牌(共有东.南.西.北.中.发.白七种)和序数牌(分为条子.饼子.万子三种花色,每种花色各有一到九的九种牌),每种牌各四张.在麻将中,通常情况下一组和了的牌(即完成的牌)由十四张牌组成.十四张牌中的两张组成对…
1028: [JSOI2007]麻将 Time Limit: 1 Sec  Memory Limit: 162 MBSubmit: 2638  Solved: 1168[Submit][Status][Discuss] Description 麻将是中国传统的娱乐工具之一.麻将牌的牌可以分为字牌(共有东.南.西.北.中.发.白七种)和序数牌(分为条子.饼子.万子三种花色,每种花色各有一到九的九种牌),每种牌各四张.在麻将中,通常情况下一组和了的牌(即完成的牌)由十四张牌组成.十四张牌中的两张组成…
首先枚举等待牌,再枚举对子牌.   然后1~n扫一遍,如果现在 s[i]不能被3整除,那么必须跟后两个数搭配几下变成能被3整除的.然后如果能被3整除,那么只要三个连续的一组可行,则三个相同的一组必定也可行.因为如果有一种方案是3个连续的而最小数又能被3整除,那这种就必须有3n组,3n组的话三个相同的为一组的方案也就存在了.   所以方法就是,n^2枚举等待牌和对子牌,o(n)扫描.扫描方法是,从1~n来做,如果s[i]不能整除三就消掉几个让他能整除三,然后就三个为一组的消去. #include<…
Description 麻将是中国传统的娱乐工具之一.麻将牌的牌可以分为字牌(共有东.南.西.北.中.发.白七种)和序数牌(分为条子.饼子.万子三种花色,每种花色各有一到九的九种牌),每种牌各四张.在麻将中,通常情况下一组和了的牌(即完成的牌)由十四张牌组成.十四张牌中的两张组成对子(即完全相同的两张牌),剩余的十二张组成三张一组的四组,每一组须为顺子(即同花色且序数相连的序数牌,例如条子的三.四.五)或者是刻子(即完全相同的三张牌).一组听牌的牌是指一组十三张牌,且再加上某一张牌就可以组成和牌…
Description 麻将是中国传统的娱乐工具之一.麻将牌的牌可以分为字牌(共有东.南.西.北.中.发.白七种)和序数 牌(分为条子.饼子.万子三种花色,每种花色各有一到九的九种牌),每种牌各四张.在麻将中,通常情况下一 组和了的牌(即完成的牌)由十四张牌组成.十四张牌中的两张组成对子(即完全相同的两张牌),剩余的十二张 组成三张一组的四组,每一组须为顺子(即同花色且序数相连的序数牌,例如条子的三.四.五)或者是刻子(即 完全相同的三张牌).一组听牌的牌是指一组十三张牌,且再加上某一张牌就可以…
http://www.lydsy.com/JudgeOnline/problem.php?id=1028 表示不会贪心QAQ 按顺序枚举,如果能形成刻子那么就形成刻子,否则形成顺子.orz 证明?:因为按顺序枚举,所以当枚举到i,i一定要用完,所以因为>3个顺子和>3个刻子等价,所以考虑<3个顺子.如果i是刻子,假设我们用顺子,那么显然会剩下<=2个,因此不是最优的,所以有刻子就用刻子. 那么暴力枚举添加的,然后暴力枚举哪个是对子,最后暴力判断..n^3.. #include &l…
[题目链接]:http://www.lydsy.com/JudgeOnline/problem.php?id=1028 [题意] [题解] /* 枚举新加入的一张牌是哪一张牌; 然后尝试把它加进去; 再枚举1..n里面是哪一张牌组成了对子; 然后再看看剩余的牌能不能按照要求 分成3*m组 个数直接对3取模 因为个数大于3的话,就直接组成3个一样的一组就好了; 剩下的看看能不能组成符合要求的顺子; 写个模拟找顺子的过程就好 */ [完整代码] #include <bits/stdc++.h> u…
题目链接:BZOJ - 1028 题目分析 枚举听的是哪种牌,再枚举成对的是哪种牌,再贪心判断: 从1到n枚举每一种牌,如果这种牌的个数小于0,就返回不合法. 将这种牌的张数 % 3, 剩下的只能和 i + 1, i + 2 这两种牌构成顺,所以 Num[i + 1] -= Num[i]; Num[i + 2] -= Num[i]; 牌的种类要枚举到 n + 2,因为第 n - 1 和第 n 种牌可能会减掉 n + 1,n + 2 的牌. 代码 #include <iostream> #inc…
题目链接 枚举对子,枚举每张牌,先出完它的刻子,剩下的出顺子.\(O(n^3)\). 不是这样 -> 出完所有刻子,最后出顺子.(日常zz) 优先仨相同的,然后顺子,有一次且一定要用一次机会补顺子的空位,即把刻子换成对子.这样好像是\(O(n^2)\). 不写\(O(n^2)\)的了,特判之类大概非常麻烦.. //828kb 396ms #include <cstdio> #include <cctype> #include <cstring> #define g…
传送门 怎么好像没什么人写 $dp$ ...? 设 $f[i][j][k][0/1]$ 表示当前处理完前 $1$ 到 $i$ 的数,上一位开始的顺子有 $j$ 个,当前位开始的顺子有 $k$ 个,是否已经有雀头,的情况下能不能胡 因为连续三个顺子其实等价于三个刻字,所以我们只要考虑顺子小于 $3$ 的情况,即 $j,k$ 都小于 $3$ 然后枚举下一位的顺子数量并把当前位的顺子补好,剩下的全做刻字,顺便处理一下雀头就行 然后枚举每种可能的听牌,跑一遍 $dp$ 看看有没有解 具体怎么 $dp$…
描述 http://www.lydsy.com/JudgeOnline/problem.php?id=1028 同一种花色的牌,序数为\(1,2,...,n\).定义"和了"为手上有\(3*m+2\)张牌,其中有一个对子,其他牌组成\(m\)组,每一组为顺子或刻子(三张完全相同).定义"听牌"为差一张牌"和了".现在给出\(n\)和\(3*m+1\)张牌,问是否听牌,听哪些牌? 分析 数据较小,可以直接模拟.枚举加哪一张牌,在判断加进去以后是否和…
暴力/模拟 $n\leq400$,嗯……这是一个很小的数据范围= = 判断一副牌是不是听牌并求出听什么牌太麻烦了,干脆我们直接判是不是胡牌好了~ 枚举胡的是哪张牌,然后判一下加上这张牌后是否能胡. 算法框架很好写: F(i,,n){ a[i]++; if (check()) ans[++tot]=i; a[i]--; } 但是这个check怎么写让我很蛋疼…… int n,m,a[N],b[N],ans[N],tot; bool dfs(int x){ && b[x]== &&am…
贪心(qwq)习题题解 SCOI 题解 [ SCOI2016 美味 ] 假设已经确定了前i位,那么答案ans一定属于一个区间. 从高位往低位贪心,每次区间查找是否存在使此位答案为1的值. 比如6位数确定了前三位\((101...)_2\),下一位应该是1 那么\(a_i+x_i\)的查找区间为:\([(101100)_2,(101111)_2]\) ,同理如果应该是0则为\([(101000)_2,(101011)_2]\). 注意到有区间\([l,r]\)范围的限制所以用主席树维护即可. […
每周日更新 2016.05.29 UVa中国麻将(Chinese Mahjong,Uva 11210) UVa新汉诺塔问题(A Different Task,Uva 10795) NOIP2012同余方程 NOIP2007统计数字 NOIP2013火柴排队 NOIP2013花匠 2016.06.05 Uva 组装电脑 12124 - Assemble Uva 派 (Pie,NWERC 2006,LA 3635) 2016.06.19 Uva 网络(Network,Seoul 2007,LA 39…
Search GO 说明:输入题号直接进入相应题目,如需搜索含数字的题目,请在关键词前加单引号 Problem ID Title Source AC Submit Y 1000 A+B Problem 10983 18765 Y 1036 [ZJOI2008]树的统计Count 5293 13132 Y 1588 [HNOI2002]营业额统计 5056 13607 1001 [BeiJing2006]狼抓兔子 4526 18386 Y 2002 [Hnoi2010]Bounce 弹飞绵羊 43…
我实在是太弱了...不滚粗只能刷BZOJ了...这里来记录每天刷了什么题吧. 2015-7-9 : 1001[BeiJing2006]狼抓兔子                 | 最大流练习(呃..其实是平面图最大流辣) 1002[FJOI2007]轮状病毒                     | 基尔霍夫矩阵算生成树数量(呃..其实是DP辣) 2015-7-10: 1003[ZJOI2006]物流运输trans             | SPFA+DP 2015-7-11: 1004[H…
1020 SHOI2008 安全的航线flight 这题的代码写了很久,主要是因为几何题的东西都忘得差不多了.除去写代码的2个小时,今晚又调了一晚上,终于AC了. 这题的做法还是很有参考价值的. 最简单的方法: 二分一个答案\(ans\),把小岛向外变大\(ans\)的距离.这个"变大"可以把点变成圆,把线段变成矩形.然后判断线段(航线)是否被完全覆盖,此做法巨烦. 除了上面所说的做法外,还百度到了一篇ydc的题解:http://ydcydcy1.blog.163.com/blog/s…
1951    [Sdoi2010]古代猪文  Sdoi2010 Contest2   807 1928 1566    [NOI2009]管道取珠       806 1429 2756    [SCOI2012]奇怪的游戏     804 2953 2599    [IOI2011]Race       802 2699 3527    [Zjoi2014]力     800 1360 1028    [JSOI2007]麻将        798 1776 3209    花神的数论题 …
决定从头到尾干一波BZOJ!可能会写没几题就停下吧,但还是想学学新姿势啦. 1001. [BeiJing2006]狼抓兔子 即求 $(1, 1)$ 到 $(n, m)$ 的最小割.跑 dinic 即可. #include <bits/stdc++.h> using namespace std; inline int read() { , f = ; char ch = getchar(); ; ch = getchar(); } + ch - ; ch = getchar(); } retur…
1028: [JSOI2007]麻将 Time Limit: 1 Sec  Memory Limit: 162 MBSubmit: 2197  Solved: 989[Submit][Status][Discuss] Description 麻将是中国传统的娱乐工具之一.麻将牌的牌可以分为字牌(共有东.南.西.北.中.发.白七种)和序数 牌(分为条子.饼子.万子三种花色,每种花色各有一到九的九种牌),每种牌各四张.在麻将中,通常情况下一 组和了的牌(即完成的牌)由十四张牌组成.十四张牌中的两张组…
1029: [JSOI2007]建筑抢修 Time Limit: 4 Sec  Memory Limit: 162 MBSubmit: 3785  Solved: 1747[Submit][Status][Discuss] Description 小刚在玩JSOI提供的一个称之为“建筑抢修”的电脑游戏:经过了一场激烈的战斗,T部落消灭了所有z部落的入侵者.但是T部落的基地里已经有N个建筑设施受到了严重的损伤,如果不尽快修复的话,这些建筑设施将会完全毁坏.现在的情况是:T部落基地里只有一个修理工人…
[题目描述] 众所周知,麻将是我们国家的国粹.这段时间,小D也迷上了麻将这个老少皆宜的游戏. 小D觉得这些不同规则的麻将太麻烦了,所以他集合了很多种麻将规则创造出了一套D麻将.下面是D麻将的几个特点: D麻将中有三种花色,万(w)索(s)筒(t),每个花色下有9张牌,每张牌有4个. D麻将中没有杠牌,只有顺子和刻子.顺子的含义是相同花色的三张连在一起的牌型(比如说2w3w4w):刻子的含义是三张花色和数字都相同的牌型(比如说2s2s2s). D麻将的胡牌的时候手上往往有14张牌,14张牌凑成了四…
Description 麻 将是中国传统的娱乐工具之一.麻将牌的牌可以分为字牌(共有东.南.西.北.中.发.白七种)和序数牌(分为条子.饼子.万子三种花色,每种花色各有一到 九的九种牌),每种牌各四张.在麻将中,通常情况下一组和了的牌(即完成的牌)由十四张牌组成.十四张牌中的两张组成对子(即完全相同的两张牌),剩余的 十二张组成三张一组的四组,每一组须为顺子(即同花色且序数相连的序数牌,例如条子的三.四.五)或者是刻子(即完全相同的三张牌).一组听牌的牌是指一 组十三张牌,且再加上某一张牌就可以…
A poker deck contains 52 cards - each card has a suit which is one of clubs, diamonds, hearts, or spades (denoted C, D, H, S in the input data). Each card also has a value which is one of 2, 3, 4, 5, 6, 7, 8, 9, 10, jack, queen, king, ace (denoted 2,…
这道题放了很久还是回来补了 D 天才麻将少女KPM SRM 07 背景&&描述 天才麻将少女KPM立志要在日麻界闯出一番名堂.     KPM上周叒打了n场麻将,但她这次又没控分,而且因为是全市参与的麻将大赛,所以她的名次范围是0..10^5.     名次可能等于0是因为KPM那场没去打= =     没去打就意味着无限的可能性.     KPM叒想要让自己的名次严格递增.为了避免被妹子怀疑,她只能把没打的比赛的名次改成T..R中的整数     当然,n场全部严格递增是很难做到的.你只需…