`
JokerT
  • 浏览: 22952 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

填图游戏

阅读更多

SRM444DIV1 550分

 

大概意思是给定一个一定长宽的表,现在手中有两种卡片一种是2*2的“4”字卡片(16分),另一种是1*1的“1”字卡片(1分),卡片数不限,计算可以将其填入表中得到的最大分,图表中可能已有卡片存在。

*Problem Statement
NOTE: This problem statement contains images that may not display properly if viewed outside of the applet.

 

"4Blocks" is a two player cooperative game played on a special board. The board is a grid composed of 1x1 square cells. There are two different kinds of blocks: '1' blocks and '4' blocks. '1' blocks are 1x1, and '4' blocks are 2x2:

 

 

 

You must place blocks on the board so that their sides are aligned to the grid lines and no two blocks overlap. The final score is the sum of the values in each cell. '1' blocks are worth 1 point, and '4' blocks are worth 16 points because they cover 4 cells and each cell is worth 4 points.

 

Your friend has taken his turn and placed a number of '1' blocks on the board. The current configuration is given in the String[] grid. The j-th character of the i-th element of grid is '.' if the cell at row i, column j is empty, and '1' if your friend placed a '1' block in that cell. It is now your turn, and you can place any number of '1' or '4' blocks on the board, but you cannot remove any of the blocks that have already been placed. Return the maximum score that can be achieved. For example, the following images show one possible starting state, and the optimal placement of blocks from that state:

 

 

 

The final score would be 4*16 + 6*1 = 70.

Definition
Class: FourBlocks
Method: maxScore
Parameters: String[]
Returns: int
Method signature: int maxScore(String[] grid)
(be sure your method is public)

 


Constraints
- grid will contain between 1 and 10 elements, inclusive.
- Each element of grid will contain between 1 and 25 characters, inclusive.
- All elements of grid will contain the same number of characters.
- Each element of grid will contain only '.' or '1' (one).

Examples
0)
{".....1..1..",
"..1.....1.."}


Returns: 70

This is the example from the statement.


1)
{"...1.",
".....",
".1..1",
".....",
"1...."}


Returns: 73

 


2)
{"...1.",
".1...",
"..1.1",
"1...."}


Returns: 20

It is not possible to place any '4' bricks in this setup.


3)
{".....1...",
".....1...",
"111111111",
".....1...",
".....1..."}


Returns: 117

 

发现最做Topcoder有个老是习惯先浏览一下其他人的算法,大概心里有数。这道题刚开始看时确实有点吓到,列位大牛写的东西几乎看不懂,还用到了位运算,有的就用三维数组,真是云里雾里。

不过自己尝试一下发现不是那么回事,一气写下来就调了一个bug,算了一下复杂度照其他来说还是比较低的。

可见有时候还是应该相信自己多一点。算法如下:

 

分享到:
评论

相关推荐

    authware填图游戏程序

    这个是用来制作课件时常用的程序代码,authware填图游戏程序

    小儿填图游戏 balilargha zihniy oyun - boyap korung

    【标题】"小儿填图游戏 balilargha zihniy oyun - boyap korung" 是一款专为儿童设计的填色游戏软件。这款应用旨在激发孩子们的创造力和想象力,通过绘画活动来促进他们的认知发展。 【描述】中提到,这款软件是从...

    数独种类的计算

    数独(Sudoku)作为一种源自日本的数字填图游戏,自2004年底在英国迅速流行起来。这款游戏的核心规则简单明了:玩家面对一个由九个3×3小方格组成的9×9大网格,其中部分方格已预先填充了一些数字(通常是1到9)。...

    眼睛和眼镜教学设计.doc

    通过填图游戏复习眼球结构,以小组竞赛形式增强学生参与度,培养团队协作精神。 通过这样的教学设计,学生不仅能够掌握眼睛和眼镜的基础知识,还能在探究过程中锻炼科学思维,提升情感素质,形成良好的生活习惯。...

    第8课 9的分解和组成.pptx

    为了更好地掌握9的分解和组成,孩子们可以通过填图游戏、数线跳跃、手指计数等互动方式来实践。教师可以设计各种有趣的游戏,如卡片配对,让孩子自己找出哪些数字相加等于9,或者通过视觉化的图表帮助他们直观理解。...

    甘肃省白银市会宁县新添回民2012年秋七年级生物上册《我们周围的生物》教案 新人教版.doc

    2. 通过小填图游戏,让学生参与到生物类群的学习中,增强他们的参与度和学习兴趣。 3. 讨论生物的生命现象,让学生理解生物的生长、新陈代谢、繁殖、应激性、遗传、变异等特征。 4. 通过实例和视频展示,使学生更好...

    数学广角——集合PPT学习教案.pptx

    在巩固练习环节,通过填图游戏让学生加深对集合概念的理解,例如区分会游泳和会飞的动物,并找出同时具备这两种能力的动物。此外,还设计了一些类似的实际问题,如找出既荣获“语文之星”又荣获“数学之星”的学生...

    新北师大小学一年级数学上册可爱的企鹅PPT学习教案.pptx

    9. **逻辑思维**:通过解决谜题或填图游戏,培养孩子的逻辑推理能力,理解因果关系。 在教学过程中,使用可爱的企鹅形象可以增加学习的趣味性,吸引孩子的注意力,使抽象的数学概念更加生动易懂。通过互动式的PPT...

    石楼县八中七年级生物上册1.1.1《我们周围的生物》教案苏教版.pdf

    7. 课前准备与教学策略:教师可以制作课件展示不同生物的图片,设计填图游戏,帮助学生了解和记忆生物的主要类群。同时,通过小组讨论和问题解答,促进学生主动思考和交流。 8. 生命现象的探讨:通过讨论生物的...

    小学生意志的发展和教育.doc

    实验通过填图游戏测试了小学生的持久力,随着年龄增长,他们更能抵抗疲劳和外界干扰,持续完成任务。 教育策略: 1. 培养自主性:教师应鼓励学生独立思考,提高他们对自己行为正误的认知,增强自信,减少对他人的...

    七年级地理上册海陆分布商务星球PPT教案.pptx

    其中包括让学生参与的填图游戏,帮助他们巩固七大洲的位置和名称。这种互动式学习的方式,不仅提升了学生学习地理的兴趣,也有助于他们将抽象的地理知识转化为具体的图像记忆。 总的来说,这份《七年级地理上册海陆...

    微信HTML5在线朋友圈游戏源码带安装部署教程-古埃及对称填图智商测试.zip

    3. **对称填图**:这是一种常见的游戏玩法,玩家需要根据提示或规则在图形的一侧填充内容,使之与另一侧形成对称,锻炼玩家的空间感知和观察力。 4. **智商测试**:这种元素通常包含逻辑推理、问题解决和空间感知等...

    微信HTML5在线朋友圈游戏源码带安装部署教程-古埃及对称填图智商测试.rar

    这款游戏以古埃及对称填图为背景,旨在测试玩家的观察力和智商。源码的提供意味着我们可以查看并修改游戏的内部逻辑,这对于开发者来说是极有价值的资源。 【描述】部分再次强调了这个资源的核心内容,即包含了游戏...

    H5小游戏源码 古埃及对称填图智商测试,太邪门了.zip

    【H5小游戏源码:古埃及对称填图智商测试】是一种基于HTML5技术开发的互动游戏,旨在挑战玩家的观察力和逻辑思维能力。HTML5是现代网页开发的基石,它提供了丰富的功能和API,使得开发者能够创建出无需插件、跨平台...

    小游戏源码-古埃及对称填图智商测试,太邪门了.rar

    这篇文档将深入解析标题为"小游戏源码-古埃及对称填图智商测试,太邪门了.rar"的压缩包内容,以及与之相关的IT知识点。这个压缩包包含了一个小型游戏的源代码,旨在测试玩家的智商,特别是对称性的理解和应用。在...

    智商测试HTML5游戏源码

    游戏源码是程序员编写的游戏程序的原始代码,包含了游戏逻辑、界面设计、用户交互等各个方面的实现细节。对于开发者来说,查看和学习源码可以帮助他们理解游戏的工作原理,从而提升自己的编程技能。这个"智商测试...

    一年级上册数学智力游戏.doc

    首先,观察填图练习是通过给出的数字,要求孩子们填入适当的位置,使得每一行、每一列的数字总和达到特定的数值,比如8、9或10。这类题目不仅锻炼了孩子们的观察力和空间想象力,而且还能让他们在游戏中学习到基本的...

    3D-Picross3D.zip

    Picross,也被称为非ogram或逻辑填图,是一种流行的谜题游戏,玩家需要根据数字提示填充二维网格,形成预设的图像。然而,在"3D-Picross3D.zip"这个压缩包中,我们看到的是对这一经典游戏形式的创新演绎——3D ...

    MATLAB Picross:流行游戏的 MATLAB 版本。-matlab开发

    而“MATLAB Picross”是将流行的逻辑游戏Picross(也称为数独填图或非越界)带到MATLAB平台上的一个项目。这个项目不仅提供了一个预设的谜题集,还允许用户自行创建和编辑自己的谜题,极大地增加了游戏的可玩性和...

    2021年心理咨询师考试考前重难点练习汇总_cfe66502fb548d1.pdf

    - 童年期儿童的游戏类型:童年期儿童的游戏主要是规则游戏,这有助于他们的社会技能和认知能力的发展。 - 4个月后的婴儿表现出有选择的社会性微笑,这是社会性情感发展的一个重要标志。 2. 心理咨询技巧: - ...

Global site tag (gtag.js) - Google Analytics