赞
踩
时间又是这样,还未察觉,已是流过.......
明天4.13,好快啊,第十五届蓝桥杯就要开赛了,这是我写的第一篇博客(哈哈,具有纪念意义),博主大一新生一枚,希望在知识储备量有限的情况下,这篇博客能使各位获得些许收获
首先蓝桥杯最常考的便是枚举,贪心(极高概率),动态规划(必考),dfs(必考),bfs,二分等算法,暴力用得好,基础算法熟练,获个省奖还是很轻轻松松的.......(时间充裕的话,还是建议先把数据结构学完再学算法竞赛)
好,接下来我们进入正题
(这些你们可以不用看,练练手的,不想删,就没删)
1.快速幂(一些基础计算思想中的一个)2.最美区间(双指针)3.01背包问题(动态规划)
- //快速幂
- #include <bits/stdc++.h>
- using namespace std;
- #define mod 2024041299999
- #define ll long long
- ll a,b;
- ll ksm(ll a,ll b)
- {
- ll res=1;
- while(b)
- {
- if(b&1) res=res*a%mod;
- a=a*a%mod;b>>=1;
- } return res%mod;
- }
- int main()
- {
- cin>>a>>b;
- cout<<ksm(a,b)%mod<<endl;
- return 0;
- }
2./*有点心情不太好,迷茫,本想系统考前顺一下知识点,状态有些不好。
这次就当体验一下第一次写博客的感觉。
各位加油,尽管这篇博客对你们起不到什么作用,但我想说的是,相信你自己,走你想要走的路,勇敢些,无论是算法竞赛,还是生活都要好好过。
(这篇博客写于晚上6点左右,因作者有一些事,还有emo了一段时间,几乎相当于没怎写,快睡觉了,就记录一些自己的思考吧。)*/
- //lanqiao oj 1372
- #include <bits/stdc++.h>
- using namespace std;
- const int N=1e5+9;
- int a[N],s;
- int main()
- {
- ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
- int n,s;cin>>n>>s;
- for(int i=1;i<=n;i++)
- cin>>a[i];
- int ans=n+1;
- for(int i=1,j=0,sum=0;i<=n;i++)//sum=0很重要
- {
- while(i>j||(j+1<=n&&sum<s)) sum+=a[++j];
- if(sum>=s) ans=min(ans,j-i+1);
- sum-=a[i];
- }
- cout<<(ans>n?0:ans)<<endl;
- return 0;
- }
动态规划刚开始学习确实有一定难度,大家可以尝试着先从整体上观察代码,不必理解代码,重在思考问题如何解决这一过程。
然后学习动态规划思想,看看它是怎样解决问题的,最后学习代码,用带码实现解决问题。
- //01背包问题
- #include<iostream>
- #include<algorithm>
- using namespace std;
- const int N=1010;
- int n,m;
- int v[N],w[N];//v数组存储体积,w数组存储价值
- int f[N][N];
- int main ()
- {
- cin>>n>>m;
- for(int i=1;i<=n;i++) cin>>v[i]>>w[i];
-
- for(int i=1;i<=n;i++)
- for(int j=0;j<=m;j++)
- {
- f[i][j]=f[i-1][j];//将不能放入第i件物品的情况和能放入但是没放入的情况合并
- if(j>=v[i]) f[i][j]=max(f[i][j],f[i-1][j-v[i]]+w[i]);
- }
- cout<<f[n][m]<<endl;
- return 0;
- }
第十五届蓝桥杯考了八道题,总体来说博主做的还凑合,一般化,填空题两题错一个,六道程序设计题错一个,其余一些题该有的数据分应该都拿到了,也算尽力了,哈哈,未完,待续,电脑没电了......
第十五届蓝桥杯大赛软件赛省赛C/C++大学B组
试题A: 握手 试题B:小球反弹 试题C:好数 试题D:R格式 试题E:宝石组合
试题F:数字接龙 试题G:爬山 试题H:拔河
总体来说难度不大,题目挺有意思的,对了,1大家一定要认真审题啊,每年都有很多人因为审题不细丢了很多分,今年也是,有些人最后一题明明该做出来,却得了0分,今年的拔河,连续区间,好多人都没注意到,从中间挑数据采用深度优先搜索DFS暴力了,很可惜。
2同一道题不要执迷于一种方法,放弃,并不代表你继续用这种方法做不行,而是目前在考场上,你不适合接着用这种方法。你可能会觉得,想了很长时间的方案不去实践很遗憾,但我告诉你如果做错了,没去试试其思路真的会遗憾,在有限的时间敢不敢去多想,往往会成为人生某个时刻的关键转折点。
3.考场上可以带些水和巧克力,多用笔再草稿纸上划划,多想想分析分析就有思路了。
4.别紧张,对于第一次参加蓝桥杯的同学,你可能担心编译环境的选择,以及答案的提交什么之类的,别担心,等你到考场了,电脑上会有考前须知,还有一些界面,看了后你自然会明白。还有,切记,main()函数结果一定的有return 0;这是蓝桥杯硬性要求,填空题按照要求来,直接写答案即可。
1基础夯实,刻意练习。不熟悉的知识点,不熟的算法一定要多去研究,重复记忆,刨析透彻,最好融入一些自己对某些问题的看法,自己讲给自己听,为什么,什么原理。自己多去动手实践,画图分析,直到完全掌握。
2有耐心,别急,学习算法竞赛遇到困难很正常。毕竟很多算法是一代又一代前辈花费很长时间精心打造,一代又一代人不断更改完善研究出的成果,所以加油吧,你不笨,然后你愿意去努力,你就一定会有收获的!
“决定我们自身的不是过去“的经历,而是我们自己赋予经历的意义”,
博主也曾因为过去的一些事没有走出来,有过一些不堪的经历,但那又怎样?正如苏格拉底所说:"没有经过自省的人生,毫无意义",要记住,磨练才会使你变得更强,更强!成功不必自我膨胀,失败亦淡定从容,真正的强者,善于从顺境中找到阴影,从逆境中找到光亮,时时校准自己前进的目标。自律和认真终会让你获益匪浅。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。