fill函数的作用是:将一个区间的元素都赋予val值。函数参数:fill(first,last,val);//first为容器的首迭代器,last为容器的末迭代器,val为将要替换的值。

例题:给你n个数,然后输入一些操作:start,end,paint。表示从start到end都赋予paint的值,并输出每一次操作后的数组状态。
代码:
#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;
void print(int &elem){cout<<elem<<" ";}
int main()
{
    vector <int> V;
    int n,startpos,endpos,paint;
    cin>>n;
    V.resize(n);
    while(cin>>startpos>>endpos>>paint)
    {
            fill(V.begin()+startpos-1,V.begin()+endpos,paint);
        for_each(V.begin(),V.end(),print);
        cout<<endl;
    }
    return 0;
}
fill_n函数的作用是:给你一个起始点,然后再给你一个数值count和val。把从起始点开始依次赋予count个元素val的值。
注意: 不能在没有元素的空容器上调用fill_n函数
例题:给你n个数,然后输入一些操作:start,count,paint。表示从start开始连续填充count个数字,paint为填充的数值。
代码:
#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;
void print(int &elem){cout<<elem<<" ";}
int main()
{
    vector <int> V;
    int n,start,count,paint;
    cin>>n;
    V.resize(n);
    while(cin>>start>>count>>paint)
    {
        fill_n(V.begin()+start-1,count,paint);
        for_each(V.begin(),V.end(),print);
        cout<<endl;
    }
    return 0;
}
再发一下关于fill_n函数的例子:
// fill_n example
#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;

int main () {
  vector<int> myvector (8,10);        // myvector: 10 10 10 10 10 10 10 10

  fill_n (myvector.begin(),4,20);     // myvector: 20 20 20 20 10 10 10 10
  fill_n (myvector.begin()+3,3,33);   // myvector: 20 20 20 33 33 33 10 10

  cout << "myvector contains:";
  for (vector<int>::iterator it=myvector.begin(); it!=myvector.end(); ++it)
    cout << " " << *it;

  cout << endl;
 
  return 0;
}

最新文章

  1. iphone 下滚动条卡顿解决办法
  2. java的字体的颜色,型号,大小的方法
  3. volatile使用详解
  4. Visual Studio Professional 2015 key
  5. HDU 5269 ZYB loves Xor I (二分法)
  6. CodeForces Good Bye 2014 B. New Year Permutation
  7. ruby 模块 的引入
  8. spring 3.1.4 升 4.0.2
  9. poj 2288 tsp经典问题
  10. sql 创建临时表
  11. Piggy-Bank (hdoj1114)
  12. 私有云Mariadb集群搭建
  13. sonarqube+Scanner代码质量管理工具
  14. js中的值类型和引用类型的区别
  15. Python框架----cookie和session
  16. 深拷贝&amp;浅拷贝&amp;引用计数&amp;写时拷贝
  17. 一个简单的增强型PHP curl函数
  18. 将DataTable 覆盖到 SQL某表(包括表结构及所有数据)
  19. web服务器一些概念
  20. git基本配置及使用

热门文章

  1. Agile.Net 组件式开发平台 - 脚本管理组件
  2. win7下的mstsc ubuntu下的rdesktop
  3. Cocos2d-x数据持久化-修改数据
  4. Shell 循环读取文件
  5. C++与Lua交互(四)
  6. 选择问题(选出第i个最小元素)
  7. L002-oldboy-mysql-dba-lesson02
  8. Winform 异步更新listbox
  9. tomcat源码解读(1)–tomcat热部署实现原理
  10. PHPCMS 错误日志 Only variables should be passed by ...