#T1013. STL 函数使用 —— fill()

STL 函数使用 —— fill()

题目描述

【介绍】

STL 算法库头文件:

#include<algorithm>

std::fill 的作用(原文):Fill range with value, Assigns val to all the elements in the range [first,last). 注意:STL 函数都是左闭右开。

template <class ForwardIterator, class T>
void fill (ForwardIterator first, ForwardIterator last, const T& val);

【任务】

通过本题掌握 fill() 函数的使用方法。有一个初始全为 00 的数列,支持两种操作: 把一段区间全部设为某个值,或输出一段区间的当前值。

输入格式

第一行两个整数 n, mn,\ m。表示数列长度为 nn,初始数据全为 00,共有 mm 次操作。

接下来 mm 行,每行一个操作:

  • 1 first last val:将数列 [first, last][first,\ last] 的数据设置为 valval;
  • 2 first last:输出数列 [first, last][first,\ last] 的当前数值。

输出格式

对于每个操作 2,输出一行:[first, last][first,\ last] 区间内当前的所有数值,用空格隔开。

说明/提示

  • 1≤n≤1031 \le n \le 10^3,1≤m≤1031 \le m \le 10^3。
20 7
2 1 20
1 3 10 8
2 1 20
1 5 8 7
2 1 20
1 18 20 31
2 1 20
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 8 8 8 8 8 8 8 8 0 0 0 0 0 0 0 0 0 0
0 0 8 8 7 7 7 7 8 8 0 0 0 0 0 0 0 0 0 0
0 0 8 8 7 7 7 7 8 8 0 0 0 0 0 0 0 31 31 31