zoukankan      html  css  js  c++  java
  • 【代码模板】不存在的NOIP2017

    虽然可能没机会参加NOIP2017的复赛了
    但是这份模板我还是会在比赛前完成它的,
    作为对我过去一年的反馈。

    因为技能树点歪,,所以我会弃坑重新来点,
    辣么,,模板题的理解就很重要,他直接决定了其他的题目你写不写的来。。
    所以,这里的许多东西也许没办法在OJ上直接验证正确性(这也是打模板的痛苦之处)
    不过我会尽力去找的,并且也会把自编的数据存放下来。
    就酱紫。

    frame

    //这个项目提供了程序基本的代码框架
    
    //头文件模板
    #include<iostream>
    #include<algorithm>
    #include<cstdio>
    #include<cstring>
    #include<cctype>
    #include<iomanip>
    #include<sstream>
    #include<cmath>
    #include<string>
    #include<vector>
    #include<stack>
    #include<queue>
    #include<map>
    #include<set>
    #include<bitset>
    #include<list>
    
    //命名空间
    using namespace std;
    
    //声明与宏定义
    typedef long long LL;
    typedef long double LD;
    
    #define fst first
    #define sec second
    #define mp make_pair
    
    //常量定义
    const int N = 1e5, inf = 1e9;  //代替define的写法 & e计数法的使用
    
    //输入输出优化
    int readint(){  //readint好简单啊为什么。。。
        int x=0, op=1;  char ch = getchar();  //一定要赋初始值
        while(ch < '0' || ch > '9'){ if(ch=='-')op=-1; ch = getchar(); }
        while(ch >= '0' && ch <= '9'){ x=x*10+ch-'0'; ch = getchar(); }
        return x*op;
    }
    
    int main(){
    	cout<<"Hello World"<<endl;
    	return 0;
    }
    
    

    STL

    //这个项目提供了STL的范例
    //NOIP前第一轮模板 2017.10.5
    
    //顺序容器:vector, deque, list
    //关联容器:set, map,
    //适配容器:stack, queue, priority_queue
    #include<iostream>
    #include<set>  //基于红黑树
    #include<map>  //基于平衡二叉树
    #include<vector>  //时间换空间(逃
    #include<string> //各种黑科技
    #include<bitset>
    
    using namespace std;
    
    //操作整理:声明,插入,删除,查找,遍历
    //用法整理:你自己想啊
    
    void setting(){
    	set<int>myset; //声明int类型的集合(突然发现重名好像不会炸233333)
    	
    	//1. 基本操作
    	myset.insert(233);  //往里面添加元素(重复插入无效)
    	myset.erase(233);  //删除里面的某个元素(如果不存在该元素则不操作)(这里也可以用迭代器删除区间)
    	myset.count(233); //查询集合中是否存在某个元素
    	myset.clear();   //清空集合
    	
    	//2. 迭代器
    	myset.insert(233);  myset.insert(322);
    	set<int>::iterator it;  //如果重名声明迭代器的时候会炸掉
    	set<int>::reverse_iterator rit; //反向迭代器
    	for(it = myset.begin(); it != myset.end(); it++){
    		cout<<*it<<" ";
    	}
    	cout<<"
    ";
    	for(rit = myset.rbegin(); rit != myset.rend(); rit++){
    		cout<<*rit<<" ";
    	}
    	cout<<"
    ";
    	
    	//3. 熟练搞事
    	cout<< (myset.find(233)==myset.begin()) <<" 
    "; //查找键值的位置并返回迭代器
    	cout<< *myset.lower_bound(234)<<"
    ";  //返回第一个>=key的元素的迭代器
    	cout<< *myset.upper_bound(233)<<"
    ";  //返回第一个>key的元素的迭代器
    }
    
    void maping(){ 
    	map<int,int>mymap; //左键右值
    	
    	//1. 基本操作,,同为关联容器,基本和set差不多吧
    	mymap[5] = 7;  //添加元素(注意 "mymap[0];" 同样往map中添加了元素,只是没有赋值而已)
    	
    	//2. 迭代器
    	map<int,int>::iterator it = mymap.begin();
    	cout<<(it->first)<<" "<<(it->second)<<"
    "; //map遍历时访问的是pair类型
    	
    	//3. 
    	
    }
    
    void bitsetting(){
    	
    }
    
    void stringing(){
    	string str = "123456789";  char ch[110]="233";
    	
    	//构造函数
    	str = string(ch); //用c语言字符串s初始化
    	str = string(5,'c');  //用5个字符c初始化
    	string s1 = str;  //赋值操作
    	
    	//基本特性
    	str.size(); //返回大小
    	
    	//各种操作
    	str.substr(0, 2);  //返回子串,返回0开始的由两个字符组成的字符串
    	
    	
    }
    
    int main(){
    	stringing();
    	cout<<"Hello World"<<endl;
    	return 0;
    }
    
    
  • 相关阅读:
    Python多线程之死锁
    Python多线程之间同步总结
    C语言动态数组
    Python标准库 -- UUID模块(生成唯一标识)
    东南亚 SAP 实施 马来西亚税收在SAP的设计和实现
    odoo:开源 ERP/CRM 入门与实践 -- 上海嘉冰信息技术公司提供咨询服务
    SAP FICO 凭证导入接口 数据xml格式
    SAP HANA S4 FI TABLE表结构
    CFA一级知识点总结
    汽车行业与 Telematics
  • 原文地址:https://www.cnblogs.com/gwj1314/p/10200072.html
Copyright © 2011-2022 走看看