当前位置: 首页 > news >正文

3593 蓝桥杯 查找最大元素 简单

 3593 蓝桥杯 查找最大元素 简单

// C风格解法1,通过率100%,多组数据处理样式//str = "abcdefgfedcba"
//abcdefg(max)fedcba//str = "xxxxx"
//x(max)x(max)x(max)x(max)x(max)#include<bits/stdc++.h>const int N = 1e2 + 10;char str[N];void solve(){scanf("%s", str); // 读入字符串 strint n = (int) strlen(str); // strlen(str) 求从 str 这个地址出发到下一个 '\0' 的位置所经过的长度,// 实际上可以理解为字符串长度,O(|str|)char mx = 0; // 去求最大字母for(int i = 0; i < n; i++){mx = std::max(mx, str[i]); // 循环求最大字母} for(int i = 0; i < n; i++){printf("%c", str[i]);if(str[i] == mx){ // 每当遇到最大字母时,立刻输出(max)printf("%s","(max)");}  }printf("\n");   
}int main(){int T;    scanf("%d", &T); // 输入测试组数while(T--){ // while(T > 0){T--;...}solve();}return 0;
}

C语言 strlen 函数用来求字符串的长度(包含多少个字符)。

strlen() 函数从字符串的开头位置依次向后计数,直到遇见 '\0',然后返回计时器的值。最终统计的字符串长度不包括 '\0'。

头文件:string.h

char str[] = "http://c.biancheng.net";

运行结果为:
sizeof = 23
strlen = 22

sizeof 统计出的字符串长度比 strlen() 函数的统计值大 1。因为 sizeof 统计了字符串结尾的 '\0',而 strlen() 函数没有。

但是,sizeof 和 strlen() 函数的功能并不相同,strlen() 函数才是专门用来统计字符串长度,而 sizeof 不是。

// C++风格解法2,通过率100%,多组数据处理样式//str = "abcdefgfedcba"
//abcdefg(max)fedcba//str = "xxxxx"
//x(max)x(max)x(max)x(max)x(max)#include<bits/stdc++.h>void solve(){std::string s;    std::cin >> s; // 不建议使用getline,建议使用cin//getline 一般会把第一行剩余的换行符等信息读入,导致少读一次int n = (int) s.size(); // O(1) char mx = 0; // 求最大字母for(int i = 0; i < n; i++){mx = std::max(mx, s[i]); // 循环求最大字母} for(int i = 0; i < n; i++){std::cout << s[i];if(s[i] == mx){ // 每当遇到最大字母,输出(max)std::cout << "(max)";}  }std::cout << "\n";   
}int main(){std::ios::sync_with_stdio(false);std::cin.tie(nullptr);std::cout.tie(nullptr);int T;    std::cin >> T; // 输入测试组数while(T--){ // while(T > 0){T--;...}solve();}return 0;
}

// 使用getline
/*
2
ab
c
2'\n'ab'\n'c'\n'
*/
// std::cin >> T,此时T = 2,输入为'\n'ab'\n'c'\n'                getline()遇到'\n'终止输入
// 第一个 getline(std::cin, s) ,s = "",剩余输入为 ab'\n'c'\n'
// 第二个 getline(std::cin, s) ,s ="ab",剩余输入为 c'\n'

reference:

C语言strlen()函数:求字符串的长度


char字符对应ASCII码表0-255(全)_char字符对应的ascii码值-CSDN博客
 

http://www.lryc.cn/news/294907.html

相关文章:

  • Postgresql数据库存储过程中的事务处理
  • Redis——缓存的持久化
  • kafka-splunk数据通路实践
  • C语言第十九弹---指针(三)
  • TCP/IP LWIP FPGA 笔记
  • 2024年海外优青项目申报指南
  • threejs之常用贴图
  • Unity类银河恶魔城学习记录3-1 EnemyStateMachine源代码 P47
  • 使用webstorm调试vue 2 项目
  • 深度学习缝模块怎么描述创新点?(附写作模板+涨点论文)
  • html,css,js速成
  • 《Docker极简教程》--Docker基础--基础知识(一)
  • Web html和css
  • Three.js学习6:透视相机和正交相机
  • ❤ React18 环境搭建项目与运行(地址已经放Gitee开源)
  • 2024 RTE行业(实时互动行业)人才发展学习总结
  • 92.网游逆向分析与插件开发-游戏窗口化助手-显示游戏数据到小助手UI
  • Stable Diffusion 模型下载:majicMIX fantasy 麦橘幻想
  • docker compose安装minio
  • 二、SSM 整合配置实战
  • 『运维备忘录』之 Yum 命令详解
  • CSS中可继承与不可继承属性有哪些
  • Zephyr NRF7002 实现AppleJuice
  • (已解决)vue+element-ui实现个人中心,仿照原神
  • Webpack插件浅析
  • 【Java 数据结构】反射
  • LangChain结合通义千问的自建知识库
  • 【证书管理】实验报告
  • App Store外区账号分享
  • 判断字符串是否包含正则表达式默认的特殊字符c++