错误票据 刷题笔记

开数组 读入数据

记录最小值和最大值

每次读入x;

让a[x]++;

从最小值开始 向上扫 当扫到a[x]==0时候为断号

扫到a[x]>1为重号;

该题的小技巧

未知长度的数据的读入方式

1.首先在头文件敲上

#include<sstream>

#include<string>

#include<cstring>

初始化 一个字符串line

string line ;

3.先敲一个 getline(cin,line); 忽略掉第一行回车

int T;

cin>>T;

while(T--){

getline(cin,line);

stringstream ssin(line);

int x;

while(ssin>>x){

//逐个读入处理

}

}

完整代码

#include<iostream>

#include<cstdio>

#include<cstring>

#include<algorithm>

#include <sstream>

#include<string>

using namespace std;

const int N=1e5+10;

int i=0;

int cnt=0;

int a[N];

int main(){

int cnt;

cin >> cnt;

string line;

int minn=1e7,maxx=-1;

getline(cin, line); // 忽略掉第一行的回车

while (cnt -- )

{

getline(cin, line);

stringstream ssin(line);

int x;

while (ssin >> x) {

a[x]++;

maxx=max(maxx,x);

minn=min(minn,x);

}

}

int n,m;

for(int i=minn;i<=maxx;i++){

if(a[i]>1){

n=i;

}

if(a[i]==0){

m=i;

}

//cout <<i<<' '<<a[i]<<endl;

}

cout<<m<<' '<<n;

return 0;

}

相关推荐
夜思红尘2 小时前
算法--双指针
python·算法·剪枝
散峰而望2 小时前
【算法竞赛】C++函数详解:从定义、调用到高级用法
c语言·开发语言·数据结构·c++·算法·github
CoderCodingNo2 小时前
【GESP】C++五级真题(贪心思想考点) luogu-B4071 [GESP202412 五级] 武器强化
开发语言·c++·算法
我有一些感想……2 小时前
An abstract way to solve Luogu P1001
c++·算法·ai·洛谷·mlp
郭涤生2 小时前
第十章_信号_《UNIX环境高级编程(第三版)》_笔记
服务器·笔记·unix
前端小L2 小时前
双指针专题(三):去重的艺术——「三数之和」
javascript·算法·双指针与滑动窗口
QT 小鲜肉3 小时前
【Linux命令大全】001.文件管理之which命令(实操篇)
linux·运维·服务器·前端·chrome·笔记
巧克力味的桃子3 小时前
单链表 - 有序插入并输出学习笔记
笔记·学习
智者知已应修善业4 小时前
【求等差数列个数/无序获取最大最小次大次小】2024-3-8
c语言·c++·经验分享·笔记·算法
LYFlied4 小时前
【每日算法】LeetCode 416. 分割等和子集(动态规划)
数据结构·算法·leetcode·职场和发展·动态规划