随笔分类 -  题解

上一页 1 ··· 19 20 21 22 23
摘要:仔细观察,其实这个价格是可以抵消的 看: 价格 = (x1 - x2) + (x2 - x3) + (x3 - x4) + (x(n - 1) - xn) 所以会发现,x2和x2抵消,x3和x3抵消……其实最后就是x1 - xn 所以具体代码如下,用的是STL的vector,一会会讲到vector的 阅读全文
posted @ 2020-09-28 18:47 HappyBobb 阅读(2) 评论(0) 推荐(0) 编辑
摘要:这道题和数论似乎有些关系,但我怎么想也想不出公式(我才小学5年级),于是只好循环了。 先说说为啥两层循环: 首先在同时尖叫时候,第一个人尖叫的可能第a次,第二个人可能是跟a差很多的,所以需要两层循环。本题限时1.00s,电脑一秒算一亿次,所以两次循环均要小于sqrt(100000000),循环次数是 阅读全文
posted @ 2020-09-28 18:01 HappyBobb 阅读(2) 评论(0) 推荐(0) 编辑
摘要:这道题和数论似乎有些关系,但我怎么想也想不出公式(我才小学5年级),于是只好模拟了,两层循环,代码如下,707ms: #include <iostream> using namespace std; int main() { int a, b, c, d; cin >> a >> b >> c >> 阅读全文
posted @ 2020-09-28 17:01 HappyBobb 阅读(2) 评论(0) 推荐(0) 编辑
摘要:这个题可以枚举,但是会严重超时,所以我们分析一下 如果每次四个数加起来除不了3,也就是不可能满足a + A = b + B = c + C,满足这个条件只有可能分三份 第二,就算可以分三份,如果a或者b或者c > 四个数之和除3,也不行,所以代码来了: #include <iostream> usi 阅读全文
posted @ 2020-09-27 20:35 HappyBobb 阅读(6) 评论(0) 推荐(0) 编辑
摘要:2021.1.2 Update:更好的排版与推广博客 博客:https://www.luogu.com.cn/blog/332914/ 这个题目通常有两种解法,打表和map,打表要写很多 if,而 map 其实也是这样。 先要注意一点: 碰到一千和一百万是乘而不是加,例如 one hundred 不 阅读全文
posted @ 2020-09-27 18:45 HappyBobb 阅读(8) 评论(0) 推荐(0) 编辑
摘要:这题挺水的,两个相同的合二为一就行了,具体参考代码如下: #include <iostream> #include <cstring> using namespace std; string a; int n; int main() { cin >> n; for(int i = 1; i <= n 阅读全文
posted @ 2020-09-26 16:42 HappyBobb 阅读(2) 评论(0) 推荐(0) 编辑
摘要:这个题目细节是真的多,先说说-1是怎么回事,翻译中没有: 如果a,b,c,n的结果有问题,输出-1 比如以下这个样例: 2 2 0 4 两个人去了宴会A,两个人去了宴会B,没有人两个都去了,总共4个人,而全部也有4个人,看起来没问题啊?注意: 问有多少个人没有通过考试(至少有一个,因为主角没有通过考 阅读全文
posted @ 2020-09-26 15:58 HappyBobb 阅读(4) 评论(0) 推荐(0) 编辑
摘要:有些人这道题目使用了循环,这是个好方法,但是公式似乎更好吧? 首先先要注意题目的翻译和输入顺序不一样 The only line contains four integers k, n, s, p 先输入k,n,s,p,和翻译出现的顺序不一样哦 公式是这样算的: 先算一个人要几张纸,注意要向上取证, 阅读全文
posted @ 2020-09-24 21:03 HappyBobb 阅读(3) 评论(0) 推荐(0) 编辑
摘要:准备NOIP入门比赛了,最近狂刷入门题目,感觉越来越简单 好吧,不说废话,这道题目不算很难,用了两次循环就AC了,86ms。 先说说题目意思吧: 有n个数,现在要求出递增子段最大数 以样例来看: 输入: 5 1 2 1 4 6 输出: 5 首先第一个1比2小,递增,现在最大 = 2 - 1 = 1 阅读全文
posted @ 2020-09-22 18:32 HappyBobb 阅读(8) 评论(0) 推荐(0) 编辑
摘要:告诉我无是什么??? 阅读全文
posted @ 2020-09-21 21:36 HappyBobb 阅读(1) 评论(0) 推荐(0) 编辑
摘要:这个题目费了我好久啊,如果数据小一点,真的就是暴力红题,sort+reverse就ok了,但是最重要的问题还是数据 n, m <= 10^6 10^6 = 1000000 我们先想一下,如果从0开始循环到n-1,加上sort和reverse,肯定TLE,不过这么写也能拿Subtask #1的24分 阅读全文
posted @ 2020-09-19 18:19 HappyBobb 阅读(2) 评论(0) 推荐(0) 编辑
摘要:其实这个题目要从数学角度分析: 如果输入数据全一样,直接输出n就好了 如果不一样最小的长度只有可能为1 vector代码来啦: #include <iostream> #include <vector> using namespace std; vector <int> vec; int main( 阅读全文
posted @ 2020-09-16 18:02 HappyBobb 阅读(3) 评论(0) 推荐(0) 编辑
摘要:这个题目最难的点不是24进制时间,而是前导0 通过观察样例,我们发现,如果时或者分为0,输出“00”,如果时或者分为个位数,输出“0”时分,这个看似好处理,但如果用if占了整个程序一大半啊! 先来看看如何做24进制时间,其实比较简单的 for(int i = 1; i <= n; i++) { b+ 阅读全文
posted @ 2020-09-12 16:39 HappyBobb 阅读(3) 评论(0) 推荐(0) 编辑

上一页 1 ··· 19 20 21 22 23
点击右上角即可分享
微信分享提示