米哈游笔试第一题90%ac输出内容过多
米哈游第一题:
任何数字都可以由不同的3的幂加或减组成。
28 = 27 + 1
20 = 27 - 9 + 3 - 1
输入一个n
输出上述可以构成n的唯一字符串,从大到小排列
例如:
输入:
20
输出
27-9+3-1
这道题我a了90%,最后一个例子没过没搞明白为什么
首先思路是递归f(20) = 27 - f(7),然后过0%,说系统栈爆炸了,我直接慌了当时做了30min了,不能0啊;
然后改成迭代,用StringBuilder,过了90%,最后一个说是sb过长oom了,没理解。
然后尝试每次sout,又时间过长,可能sout占用时间过多;
最后尝试用BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(System.out));输出流来弄,结果告诉我说最后一个例子输出内容太多,不让我输出,离谱了。
代码附图,应该没错,离谱了。
任何数字都可以由不同的3的幂加或减组成。
28 = 27 + 1
20 = 27 - 9 + 3 - 1
输入一个n
输出上述可以构成n的唯一字符串,从大到小排列
例如:
输入:
20
输出
27-9+3-1
这道题我a了90%,最后一个例子没过没搞明白为什么
首先思路是递归f(20) = 27 - f(7),然后过0%,说系统栈爆炸了,我直接慌了当时做了30min了,不能0啊;
然后改成迭代,用StringBuilder,过了90%,最后一个说是sb过长oom了,没理解。
然后尝试每次sout,又时间过长,可能sout占用时间过多;
最后尝试用BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(System.out));输出流来弄,结果告诉我说最后一个例子输出内容太多,不让我输出,离谱了。
代码附图,应该没错,离谱了。
全部评论
我最开始直接回溯过了一半,然后剪枝过了0.95,然后优化不动了🤔
求夸夸,嘤嘤嘤
兄弟,我做出来了,有参考你的思路
uu什么岗?
相关推荐
06-20 14:09
西安电子科技大学 Web前端 点赞 评论 收藏
分享
点赞 评论 收藏
分享
05-15 19:57
西安建筑科技大学 Java 点赞 评论 收藏
分享