遍历所有区间可能,找到第一个不同
摘要:解题思路:遍历所有区间可能,如果起点和终点相同,那么就各自向中间移动一位,直到第一位不同。然后比较这一位,前大后小则ans++注意事项:参考代码:#include <bits/stdc++.h>
#……
3143: 蓝桥杯2023年第十四届省赛真题-更小的数
摘要:```cpp
#include
using namespace std;
string a;
int ans;
int main()
{
cin>>a;
for(int……
C语言解法,参考C++
摘要:解题思路:注意事项:参考代码:#include<stdio.h>#include<string.h>int main(){ char num[5000]; int i,j,a=0; scanf("%s……
优质题解
蓝桥杯2023年第十四届省赛真题-更小的数(C++代码详解)
摘要:解题思路: 中心思想:s[l] > s[r]则满足条件,答案的个数+1。 详细解释:考虑s的所有子串[l,r], l即left,是子串的起始下标,r即right是子串的末尾……
蓝桥杯2023年第十四届省赛真题-更小的数(入门必备,简单易懂)
摘要:解题思路:原字符串:210102一共有 8 种不同的方案:1)所选择的子串下标为 0 ∼ 1 ,反转后的 numnew = 120102 < 210102 ;2)所选择的子串下标为 0 ∼ 2 ,反转……
蓝桥杯2023年第十四届省赛真题-更小的数(C语言版)
摘要:解题思路:思路详情见代码注释注意事项:适合看懂题目但无法下手或莫名奇妙报错的人群看参考代码:#include <stdio.h>#include <string.h>#define LEN 10000……
判断首尾,如果相等就不断递归,直至结束或者判断出来首尾大小
摘要:解题思路:因为题目中是连续子序列,所以两个循环确定头尾,如果头大于尾,则肯定交换后小于之前数。如:54321交换后为12345。但是我们会碰到头尾相等的。如14321,那就比较第二个和倒数第二个这里就……
确定区间,找第一个左大右小,让count++
摘要:解题思路:定义两个指针l,r分别表示区间的两端
定义hasSmaller方法
如果l,r指向的字符满足左大右小,返回1表示找到这样一个符合条件的区间
如果l,r指向的字符恰好相等,则将l++,r……
更小的数(不用真调换,只需要比较首位指针)
摘要:解题思路:注意事项:string类型用 .length()char字符数组char s[20]用 strlen(s) 参考代码:#include<iostream>
#include<s……