2014 暑假(清凉一夏) 题解(无Code)

A题:

看懂题目了以后,果断的模拟(或者数学,或者二分)

按数表的排列顺序,会发现规律,从左下到右上来算一行,奇数项和偶数项分母和分子递增递减的不一样,我们求第n项,只需要求1+2+ ... + m 刚好大于n的项m,然后通过奇数项和偶数项的排列规律,就可以求出来了。

恩 传说这道题还可以用数学方法:额 具体的我就不推导(我也不会)直接给出公式 :m = (-1 + sqrt(1 + 8*n)) / 2。

然后可以二分,由于我们可以用n*(n + 1) / 2的方式算出前n项和,那么我们就可以通过这一方式来利用二分来进行猜数,如果公式算出来的数小于n,那么范围就可以缩小到start - mid之间,这样逐渐缩小范围,就可以快速的求出m。

ps:我还是比较仁慈的,只卡了数据范围,没有卡时间(如果卡时间的话,就只能二分和数学了)

int范围是:(1 << 31 ) - 1 ,没有到 1 << 32

B题:

就是比简单的最大串和麻烦了一点,需要用额外的数组记录一下开始的下标和结束的下标,然后直接输出就OK。对了还有判断一下,是否全是负数。

最大和这个就百度吧。。。。

C题:

简单宽搜:

在处理恶魔节点的时候,把此节点变成道路,但是并不走此节点,坐标不变,然后把步数加1,添加到队列里面。

关键代码:

struct Node
{
    int x;
    int y;
    int tep;
    Node(int tx, int ty, int tep)
    {
        x = tx;
        y = ty;
        this -> tep = tep;
    }
    Node(){}
};


......
if(mp[x][y] == 'x')
{
      mp[x][y] = '.';
      Node p(x, y, tep + 1);
      Q.push(p);
      continue;
}
.....
这样第一个搜到的第一个节点的步数就是最少步数。

D题:

这道题是小白(算法竞赛)里面的一道题,最大值最小化。

先用二分枚举,然后利用贪心是否能够进行分割。

二分枚举的是能够大于等于所有数的一个数,然后利用这个数,来对这个序列进行判断,看是否能够利用这个数来进行符合的划分。

贪心的策略是每次尽量向右划分,也就是左边的一组数超过或等于枚举出来的数,就算一次划分。

E题:

一道简单的数学题。

通过画图发现:如果横边正好整出a,那么我横着的瓷砖就可以拼m / a 块,如果横边不能正好整除a,那么横着的就摆上m/ a + 1 块,纵边同理。

那么需要的瓷砖就是 横边需要的数 * 纵边需要的数。

同样的, 数据是从1~1e9,如果相乘,超int。

F题:

额 应该算是博弈吧 还是算贪心?

对于每摞牌来说,要么是奇数,要么是偶数。

偶数时候:

两个各取一半,因为如果靠近小俞这边一半牌里面有很大的数,那小俞想取这张牌就比你简单的多(如果你不拿这摞的牌,那么小俞也可以同样的不取这摞的牌,那么你就不会去浪费步数取你根本取不到的牌。

奇数时候:

肯定有一方要多拿一张牌,那么谁拿走这张牌就由这张牌的大小顺序决定,(如果偶数的摞都取完了,取奇数的话,按照小俞先的顺序,那么这张中间的牌肯定是小俞拿,那么小俞肯定先拿这摞牌,来获取大的分数,然后中间这张就是你的了)。

所以先按顺序取所有的摞(除了中间的奇数摞的中间牌),把所有的中间牌,排一遍序,顺序取就可以了。

G题:

大数减法。。。。。

注意:

1.第一个数需要特别注意

2.不要有多余的0

3.结果是0的时候别忘了

H题:

唯一一道英格力士题。

看懂题意,其实就是找是否有一个2*2的地区是有3个以上同样颜色的块。

IQ = 英文能力





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
资源包主要包含以下内容: ASP项目源码:每个资源包中都包含完整的ASP项目源码,这些源码采用了经典的ASP技术开发,结构清晰、注释详细,帮助用户轻松理解整个项目的逻辑和实现方式。通过这些源码,用户可以学习到ASP的基本语法、服务器端脚本编写方法、数据库操作、用户权限管理等关键技术。 数据库设计文件:为了方便用户更好地理解系统的后台逻辑,每个项目中都附带了完整的数据库设计文件。这些文件通常包括数据库结构图、数据表设计文档,以及示例数据SQL脚本。用户可以通过这些文件快速搭建项目所需的数据库环境,并了解各个数据表之间的关系和作用。 详细的开发文档:每个资源包都附有详细的开发文档,文档内容包括项目背景介绍、功能模块说明、系统流程图、用户界面设计以及关键代码解析等。这些文档为用户提供了深入的学习材料,使得即便是从零开始的开发者也能逐步掌握项目开发的全过程。 项目演示与使用指南:为帮助用户更好地理解和使用这些ASP项目,每个资源包中都包含项目的演示文件和使用指南。演示文件通常以视频或图文形式展示项目的主要功能和操作流程,使用指南则详细说明了如何配置开发环境、部署项目以及常见问题的解决方法。 毕业设计参考:对于正在准备毕业设计的学生来说,这些资源包是绝佳的参考材料。每个项目不仅功能完善、结构清晰,还符合常见的毕业设计要求和标准。通过这些项目,学生可以学习到如何从零开始构建一个完整的Web系统,并积累丰富的项目经验。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值