54 lines
1.5 KiB
C++
54 lines
1.5 KiB
C++
/* ************************************************************************** */
|
|
/* */
|
|
/* ::: :::::::: */
|
|
/* Span.hpp :+: :+: :+: */
|
|
/* +:+ +:+ +:+ */
|
|
/* By: aortigos <aortigos@student.42malaga.com> +#+ +:+ +#+ */
|
|
/* +#+#+#+#+#+ +#+ */
|
|
/* Created: 2026/04/21 10:29:07 by aortigos #+# #+# */
|
|
/* Updated: 2026/04/21 10:29:07 by aortigos ### ########.fr */
|
|
/* */
|
|
/* ************************************************************************** */
|
|
|
|
#ifndef SPAN_HPP
|
|
# define SPAN_HPP
|
|
|
|
# include <iostream>
|
|
# include <vector>
|
|
# include <algorithm>
|
|
# include <stdexcept>
|
|
# include <climits>
|
|
# include <ctime>
|
|
|
|
class Span
|
|
{
|
|
private:
|
|
std::vector<int> data;
|
|
unsigned int n;
|
|
public:
|
|
Span();
|
|
Span(const Span &other);
|
|
Span& operator=(const Span &other);
|
|
~Span();
|
|
|
|
Span(unsigned int n);
|
|
|
|
void addNumber(int nb);
|
|
|
|
int shortestSpan();
|
|
int longestSpan();
|
|
|
|
template <typename iter>
|
|
void addNumbers(iter it, iter itt)
|
|
{
|
|
while (it != itt)
|
|
{
|
|
addNumber(*it);
|
|
// std::cout << "addNumbers: adding " << *it << std::endl;
|
|
it++;
|
|
}
|
|
}
|
|
};
|
|
|
|
#endif
|