【实验五】题解

T1:缺失的数字

题目描述;

我是敦立坤的爹!!!

一个整数集合中含有n个数字,每个数字都在0n之间。假设0n的n+1个数字中有且仅有一个数字不在该集合中,请找出这个数字。


分析:

这里引用一个桶的思想

我们设 a [ x ] a[x] a[x]表示数字x是否出现过

这个时候下标x不再是一个寻常数组的编号,而是一个"值"

里面存放的是数值为x的数字的有关信息(比如是否出现过,出现过几次等等)

利用这种思路,就可以解决这道题


Code

cpp 复制代码
#include<bits/stdc++.h>
using namespace std;

int a[10100];

int main(){
    int x;
    cin>>x;
    for (int i = 0,y; i < x; i++)
      cin>>y , a[y] = 1;//出现了一个数字y,就标记一下 
    for (int i = 0; i <= x; i++)
      if (!a[i]) cout<<i;//如果当前数字没出现过就输出 
    return 0;
}

T2:查找最长单词

题目分析:

在进行文章重复度检查时,经常需要统计一段英文中的单词数量,并找出长度最长的单词。


分析:

以空格为分隔,找出单词即可。

并求出长度最长的单词

注意需要在字符串后面加上一个空格,确保能取出最后一个单词


Code

cpp 复制代码
#include<bits/stdc++.h>
using namespace std;

string s;
int Max = 0;
string Maxx = "";
int num = 0;

int main(){
    getline(cin,s);s+=' ';//加空格 
    string now = "";
    for (int i = 0 ; i < s.size(); i++)
      if (s[i] == ' '){
          num++;//出现次数加一 
          if (Max < now.size()) Max = now.size() , Maxx = now;//纪录最大 
          now = "";
       } 
       else now+=s[i];//加上 
    cout<<num<<' '<<Max<<' '<<Maxx;
    return 0;
}

T3:到底买不买

题目描述:

太长了不管了


分析:

相关推荐
zone77393 小时前
006:RAG 入门-面试官问你,RAG 为什么要切块?
后端·算法·面试
CoovallyAIHub6 小时前
OpenClaw 近 2000 个 Skills,为什么没有一个好用的视觉检测工具?
深度学习·算法·计算机视觉
CoovallyAIHub6 小时前
CVPR 2026 | 用一句话告诉 AI 分割什么——MedCLIPSeg 让医学图像分割不再需要海量标注
深度学习·算法·计算机视觉
CoovallyAIHub6 小时前
Claude Code 突然变成了 66 个专家?这个 5.8k Star 的开源项目,让我重新理解了什么叫"会用 AI"
深度学习·算法·计算机视觉
兆子龙7 小时前
前端哨兵模式(Sentinel Pattern):优雅实现无限滚动加载
前端·javascript·算法
CoovallyAIHub10 小时前
9个视觉语言模型工厂实测:Qwen 87.9%碾压全场,你的显卡能跑哪个?
算法
SparkX开源AI知识库11 小时前
手摸手带你安装OpenClaw并对接飞书
算法·架构
一语071611 小时前
3分钟搞懂深度学习AI:实操篇:卷积层
人工智能·算法
CoovallyAIHub1 天前
181小时视频丢给GPT-5,准确率只有15%——南大联合NVIDIA等五校发布多模态终身理解数据集
深度学习·算法·计算机视觉