小球下落

这是一道关于小球下落问题的编程题,目标是找到从特定开始状态能获得的最大分数。题目描述了有一个n行2列的板子,小球可以向左右或向下移动。解决方案包括深度优先搜索(DFS)和贪心策略,但题目并未给出完整代码。
摘要由CSDN通过智能技术生成

时间限制:C/C++ 1秒,其他语言2秒
空间限制:C/C++ 262144K,其他语言524288K

64bit IO Format: %lld

题目描述
有一块大小为n行2列的板子,每个位置可能是一个小球,用’o’表示,可能是障碍物,
用’x’表示,也可能空无一物,用’.'来表示。每个小球可以向左向右或者向下移动,但
是不能向上移动,或者和某个小球重叠,也不能越出板子。每个小球向下移动一个单
位,牛牛可以获得一分。
牛牛想知道对于某个开始状态,能得到的最大分数是多少。

本场比赛大样例下载

输入描述:

第一行输入一个整数n,表示板子的行数。

随后n行,每行一个长度为2的字符串,如题意所示。

设有k个小球。

对于20\%20%的数据有n\le 3n≤3。

另有20\%20%的数据k\le 10k≤10。

对于60\%60%的数据有n\le 1000n≤1000。

对于100\%100%的数据有1\le n \le 3000001≤n≤300000

输出描述:

一行一个整数表示答案。

示例1

输入

10
oo
.o
.x
x.
..
oo
.o
x.
..
x.

输出

12

说明
最终结果为:
..
oo
ox
x.
.
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值