⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 10_10.cpp

📁 湖南大学ACM-OJ的部分题目代码
💻 CPP
字号:
#include<iostream>
#include<algorithm>
#include<functional>
#include<vector>
using namespace std;

class even_by_two
{
public:
	int operator()()const
	{return _x+=2;}
private:
	static int _x;
};
int even_by_two::_x=0;

void main()
{
	int iarrary[]={0,1,2,3,4,5,6,6,6,7,8};
	int iarrary1[]={0,1,2,3,4,4,5,5,6,6,6,6,6,7,8};
	vector<int> ivector(iarrary,iarrary+sizeof(iarrary)/sizeof(int));
	vector<int> ivector1(iarrary+6,iarrary+8);
	vector<int> ivector2(iarrary1,iarrary1+sizeof(iarrary1)/sizeof(int));
	ostream_iterator<int>output(cout," ");

	generate(ivector1.begin(),ivector1.end(),even_by_two());
	copy(ivector1.begin(),ivector1.end(),output);
	cout<<endl;

	generate_n(ivector.begin(),3,even_by_two());
	copy(ivector.begin(),ivector.end(),output);
	cout<<endl;

	remove(ivector.begin(),ivector.end(),6);
	copy(ivector.begin(),ivector.end(),output);
	cout<<endl;

    vector<int>ivector3(12);
	remove_copy(ivector.begin(),ivector.end(),ivector3.begin(),6);
	copy(ivector3.begin(),ivector3.end(),output);
	cout<<endl;


	remove_if(ivector.begin(),ivector.end(),bind2nd(less<int>(),6));
	copy(ivector.begin(),ivector.end(),output);
	cout<<endl;

	remove_copy_if(ivector.begin(),ivector.end(),ivector3.begin(),bind2nd(less<int>(),7));
	copy(ivector3.begin(),ivector3.end(),output);
	cout<<endl;

	replace(ivector.begin(),ivector.end(),6,3);
	copy(ivector.begin(),ivector.end(),output);
	cout<<endl;

	replace_copy(ivector.begin(),ivector.end(),ivector3.begin(),3,5);
	copy(ivector3.begin(),ivector3.end(),output);
	cout<<endl;

	replace_if(ivector.begin(),ivector.end(),bind2nd(less<int>(),5),2);
	copy(ivector.begin(),ivector.end(),output);
	cout<<endl;

    replace_copy_if(ivector.begin(),ivector.end(),ivector3.begin(),bind2nd(equal_to<int>(),8),9);
	copy(ivector3.begin(),ivector3.end(),output);
    cout<<endl;

	reverse(ivector.begin(),ivector.end());
	copy(ivector.begin(),ivector.end(),output);
	cout<<endl;

	reverse_copy(ivector.begin(),ivector.end(),ivector3.begin());
	copy(ivector3.begin(),ivector3.end(),output);
	cout<<endl;

	rotate(ivector.begin(),ivector.begin()+4,ivector.end());
	copy(ivector.begin(),ivector.end(),output);
	cout<<endl;

	rotate_copy(ivector.begin(),ivector.begin()+5,ivector.end(),ivector3.begin());
	copy(ivector3.begin(),ivector3.end(),output);
	cout<<endl;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -