c++ 信奥编程 1130:找第一个只出现一次的字符

cpp 复制代码
#include <iostream>
#include <string> 
using namespace std; 
int main()
{
	string s;
	bool flag=false;
	int lt[26]={0}; 
	cin >> s;
	for(int i=0;s[i]!='\0';i++)
	{ 
		lt[s[i]-'a']++;
	} 
	
	for(int i=0;i<s.size();i++)
	{
		if(lt[s[i]-'a']==1)
		{
			cout << s[i] << endl;
			flag=true;
			break;
		}
	}
	if(flag==false)
		cout << "no" << endl;
    return 0;
} 

本题解析:本题用到了一个技巧,那就是小写字母只有26个,然后遍历字符串,定义一个整数数组,用来存储从小写a开始的字母出现的次数。如果找到第一个就break,结束循环。另外还需要设置一个标识位。用来做标记。

本题用到的知识有:字符可以参与数字计算,字符串的遍历,一维数组的应用,同时对for循环的用法,以及终止循环的条件等相关知识。

相关推荐
水云桐程序员4 小时前
C++可以写手机应用吗
开发语言·c++·智能手机
平凡但不平庸的码农4 小时前
Go Slice 详解
算法·golang
想学习java初学者5 小时前
SpringBoot整合Vertx-Mqtt多租户(优化版)
java·spring boot·后端
AC赳赳老秦5 小时前
政企内网落地:OpenClaw 离线环境深度适配方案,无外网场景下本地化模型对接与全功能使用
java·大数据·运维·python·自动化·deepseek·openclaw
weixin_449173655 小时前
在 Java 中,‌线程安全的 List‌ 主要有以下几种实现方式,它们的效率取决于具体的使用场景(尤其是读写比例):
java·线程安全的list
砚底藏山河6 小时前
股票数据API接口:如何获取股票历历史分时KDJ数据
java·python·maven
MegaDataFlowers7 小时前
运行若依项目
java
lulu12165440787 小时前
JetBrains IDE 终极AI编程方案:CC GUI插件让Claude Code和Codex丝滑运行
java·ide·人工智能·python·ai编程
Jasmine_llq7 小时前
《B3867 [GESP202309 三级] 小杨的储蓄》
算法·循环遍历·数组累加(模拟)·索引定位·顺序输出
啦啦啦_99997 小时前
案例之 逻辑回归_电信用户流失预测
算法·机器学习·逻辑回归