这份分析我们放在第一个来做,9月赛事估计很大概率会参照7月赛事的规律来命题,这份分析对我们来说真的特别特别重要!
-
跑步训练
这是第一题,,考试的时候一定要胆子大,不要害怕,我在前面的分析里也说过,像第一个填空,可以通过观察或者计算得出结果的,不要慌,对周边的环境(毕竟是都在敲代码,环境肯定是哒哒哒。。。特别是有些人坐你的前后,可能一直这样哒哒哒!)和自己的外在粗略一点,对自己的内心要细致一点。如果能冷静下来,慢慢审题的话,应该可以拿下的,不要粗心!(+5) -
纪念日
这是第二题,我现在知道用计算器了,如果这样的话,这应该算是送分了。(+5) -
合并检测
这是第三题了,有10分,必须拿下,不然分不够的,如果静下心来,好好分析的话,我们设n个民众,这题应该可以拿到手。(+10) -
REPEAT程序
这是第4个题目,说实话这题栽就栽了吧,挺难的,光就文件读取都不太会,而且就算读取文件成功了,我们接下来的模拟也不是那么轻松的。 -
矩阵
最后一个填空放在这里,考的是dp,不太容易想到,这样的dp不是太容易,本来我dp就等于没学过,嗨~这题也没了。 -
整除序列
这是第一个大题,说实话是送点分给我们的,但一定要注意他的数据范围,最好用long long类型,别这样简单的题都得不到满分,不过细心一定可以拿满的。(+15) -
解码
这题也还好,我们边读取边输出的话,也不是很难,细心一点。(+20) -
走方格
我有点纳闷了,网上都说dfs走不出全部数据,可我刚刚码了一个类似dfs的,29 30的数据都通过了呀!所以还是得自己亲自动手才知道事情的真相。其实有点像爬楼梯,不太像正儿八经的dfs,有点像普通的递归,我感觉还没有爬楼梯那题复杂,而且数据量也不大,就是一个普通的递归题,我贴一下代码吧。(+20)
//#include <bits/stdc++.h>
#include<iostream>
using namespace std;
int n,m,ans;
void dfs(int x,int y){
if(x>n||y>m){
return ;
}
if(x%2==0&&y%2==0){
return ;
}
if(x==n&&y==m){
ans++;
return ;
}
dfs(x+1,y);
dfs(x,y+1);
}
int main(){
cin>>n>>m;
dfs(1,1);
cout<<ans;
return 0;
}
- 整数拼接
其实到这里,如果真的如愿的话,我已经拿住75分了,做对了一半,估计二等有戏了,但这只是我自己的模拟,明天的真实情况还要看现场发挥。 一般照我以往的心态的话,到这里我就不敢再坚持下去了,但像这次我就亏大发了,这题通过全排列函数来做的话,是可以有思路的,而且我感觉也是对的,稳住啊!明天就要考试了,要是遇到这样的好事,那我不就收获100分了?加油吧!我贴一下代码。(+25)
//#include <bits/stdc++.h>
#include<iostream>
#include<algorithm>
using namespace std;
long long int n,k,ans,x,y,p,s,t;
long long int a[100005];
int main(){
cin>>n>>k;
for(int i=0;i<n;i++){
cin>>a[i];
}
do{
if(s!=a[0]||t!=a[1]){
x=a[0];
y=a[1];
s=a[0];
t=a[1];
cout<<x<<" "<<y<<endl;
while(y){
x*=10;
y/=10;
}
p=x+a[1];
if(p%k==0){
ans++;
}
}
}while(next_permutation(a,a+n));
cout<<ans;
return 0;
}
- 网络分析
最后一题,依照蓝桥杯的尿性,一般都是压轴的,最难的题,所以你看吧,这题他要考查并查集,我只是听说过,从来没有码过这样的题,太难了,直接忽略这最后一题。
最后做一下总结,如果我要是参加7月赛事的话,我如果心可以静下来,做到100%发挥,就可以有100分左右的成绩,就可以冲刺决赛了,但到了真实赛场就不一定有这样好的发挥,或者题目的设置可能不会让我感觉这么舒心,总之,心态要稳,然后一定要坚持到倒数第二题,除了最后一题可以放弃外,其他都要好好把握好,加油!