第十一届 蓝桥杯校内模拟赛

编程入门 行业动态 更新时间:2024-10-10 08:18:19

第十一届 蓝桥杯<a href=https://www.elefans.com/category/jswz/34/1766800.html style=校内模拟赛"/>

第十一届 蓝桥杯校内模拟赛

一、

  • 1200000有多少个约数(只计算正约数)。
    答案:96

二、

  • 在计算机存储中,15.125GB是多少MB?
    答案:15488

三、

  • 在1至2019中,有多少个数的数位中包含数字9?
     答案:544

四、

  • 一棵包含有2019个结点的树,最多包含多少个叶结点?
    答案:2018

五、

  • 一个正整数如果任何一个数位不大于右边相邻的数位,则称为一个数位递增的数,例如1135是一个数位递增的数,而1024不是一个数位递增的数。给定正整数 n,请问在整数 1 至 n 中有多少个数位递增的数?
  • O(n)
#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std; 
int n, ans;
bool ok(int x) {int t = 10;while (x) {int d = x % 10;if (d > t) return false;t = d;x /= 10;}return true;
}
int main() {scanf("%d", &n);for (int i = 1; i <= n; i++) {if (ok(i)) ans++;}printf("%d", ans);return 0;
} 

  • 在数列 a[1], a[2], …, a[n] 中,如果对于下标 i, j, k 满足 0<i<j<k<n+1 且 a[i]<a[j]<a[k],则称 a[i], a[j], a[k] 为一组递增三元组,a[j]为递增三元组的中心。给定一个数列,请问数列中有多少个元素可能是递增三元组的中心。
  • O(n2)
#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std; 
const int N = 1005;
int n, p[N], ans;
bool ok(int x) {bool ok = false;for (int i = x - 1; i >= 1; i--) {if (p[i] < p[x]) {ok = true; break;}}if (!ok) return false;for (int i = x + 1; i <= n; i++) {if (p[x] < p[i]) return true;}return false;	
}
int main() {scanf("%d", &n);for (int i = 1; i <= n; i++) {scanf("%d", &p[i]); }for (int i = 1; i <= n; i++) {if (ok(i)) ans++;}printf("%d", ans);return 0;
} 

七、

  • 小明对类似于 hello 这种单词非常感兴趣,这种单词可以正好分为四段,第一段由一个或多个辅音字母组成,第二段由一个或多个元音字母组成,第三段由一个或多个辅音字母组成,第四段由一个或多个元音字母组成。给定一个单词,请判断这个单词是否也是这种单词,如果是请输出yes,否则请输出no。元音字母包括 a, e, i, o, u,共五个,其他均为辅音字母。
  • O(n)
#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std; 
const int N = 105;
int n;
char s[N], h[5] = {'a', 'e', 'i', 'o', 'u'};
bool ok(int x) {for (int i = 0; i < 5; i++) {if (h[i] == s[x]) return true;}return false;
}
bool solve() {n = strlen(s + 1);//找第一段int t = 1;for (; t <= n; t++) {if (ok(t)) {break;}} //找第二段if (t >= n || t == 1) return false;for (; t <= n; t++) {if (!ok(t)) {break;}} //找第三段if (t >= n) return false;for (; t <= n; t++) {if (ok(t)) {break;}} //找第四段if (t > n) return false;for (; t <= n; t++) {if (!ok(t)) {break;}} if (t == n + 1) return true;return false;	
}
int main() {scanf("%s", s + 1);if (solve()) printf("yes");else printf("no");return 0;
} 

八、

  • 第八题

九、

  • 第九题

十、

  • 第十题

更多推荐

第十一届 蓝桥杯校内模拟赛

本文发布于:2024-02-13 22:24:13,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1760707.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:校内   一届   蓝桥杯

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!