摘要:
题目的大意是,给你 m 个数字,让你从中选 n 个,使得选出的数字的极差最小。 好吧,超级大水题。因为要极差最小,所以当然想到要排个序咯,然后去连续的 n 个数字,因为数据不大,所以排完序之后直接暴力就OK了。 附AC代码: 1: #include 2: #include 3: #include 4: #include 5: #include 6: #i... 阅读全文
摘要:
现在有一个字符串”MI”,这个字符串可以遵循以下规则进行转换: 1、Mx 可以转换成 Mxx ,即 M 之后的所有字符全部复制一遍(MUI –> MUIUI) 2、III 可以转换成 U。 3、UU 可以直接消除 现在你的任务是,给定你另外一串字符串,请判断能否从“MI”按照如上规则用有限的步骤转化得出。 (先吐个槽,出题人是MIUI的粉丝还是肿么??) 进... 阅读全文
摘要:
给你一个 n * n 的 01 矩阵,现在你的任务是将这个矩阵中尽量少的 0 转化为 1 ,使得每个数的上下左右四个相邻的数加起来是偶数。求最少的转化个数。 首先,n 的规模并不大,最大只有15。但是完全枚举整个矩阵显然是不可能的(2225 ≈ 5 * 1067)。但是我们可以枚举第一行,然后用第一行来算出后面的所有行。 但是,怎么算呢? 先来说下算法。对于每一行,我们通过他上... 阅读全文
摘要:
有 f + 1 个人来分 n 个圆形派,每个人得到的必须是一整块派,而不是几块拼在一起,并且面积要相同。求每个人最多能得到多大面积的派(不必是圆形)。 这题很好做,使用二分法就OK。 首先在读取所有派的半径后处理出所有派的面积,并且记录最大的那个派的面积。然后从 0 ~ maxsize 二分枚举一下,就能得到答案。 此外,这道题最后输出保留小数位数可以是 3, 4, 5,都可... 阅读全文
摘要:
在一个 n * n 网格中填了一些大写字母,你的任务是把剩下的格子中也填满大写字母,使得任意两个相邻格子(即有公共边的格子)中的字母不同。如果有多重填法,则要求按照从上到下,从左到右的顺序把所有格子连接起来得到的字符串的字典序应该尽量小。 直接暴力走起就OK。因为,需要填的格子最多就是 A、B、C、D、E 这五个字母。所以直接暴力也就 O(n2) 因为要保证字符串的字典序最小,所... 阅读全文
摘要:
给定一个正整数 n ,你的任务使用最少的操作次数把序列 1, 2, 3, …… , n 中的所有数都变成 0 。每次操作可以从序列中选择一个或者多个数,同时减去一个相同的正整数。比如,1, 2, 3 可以把 2 和 3 同时减小 2 ,得到 1, 0, 1 。 模拟几次就能看出做法了。 例如当 n = 6 的时候 0 ----- 1 2 3 4 ... 阅读全文
摘要:
题意大致如下:屌丝找女神聊天,女神回了一句 hehe ,而我们都知道 Hehe 有两个意思,一个就是 Hehe ,另外一个则是 wqnmlgb (我去年买了个表) ,所以屌丝很纠结,于是开始思考到底女神是什么意思,现在屌丝想知道女神的一句话究竟有多少种意思? 这题的定位是签到题,很水。 从题目给的第四组测试数据 eheheheh ,对应的答案是 3 种情况,由此分析(我下面用 H 表示... 阅读全文
摘要:
给你一个数 n ( 2 2: #include 3: #include 4: #include 5: #include 6: #include 7: #include 8: #include 9: #include 10: #include 11: #include 12: #define LL __int64 13: #define M(a) memset(a, 0, sizeof(a)) 14: using names... 阅读全文
摘要:
定义一个数 y 为 x 的 I-number。对于 y 有如下要求: 1、y > x; 2、y 的每一位之和要为10的倍数(例如 28 每一位之和为 10 ,为 10 的 1 倍); 3、这样的 y 有很多个,但是I-number为最小的那个 注意:x 的长度不会超过 105 位 这道题目可以直接爆搞,因为可以证明符合要求的 y 一定满足 y ... 阅读全文
摘要:
有一个 n * n * n 的立方体,其中一些单位立方体已经缺失(剩下部分不一定连通)。每个单位立方体重 1 克,且被涂上单一的颜色(即 6 个面的一颜色相同)。给出前、左、后、右、顶、底 6 个视图,你的任务是判断这个屋里剩下的最大的重量。 看完这题之后,我满头雾水,不知道从何下手。后来模拟了一下数据,才知道怎么解决。 首先,一个单位立方体只有一种颜色,如果从不同的视图看到这个立方体... 阅读全文