首页 > 编程语言 >c++专题一

c++专题一

时间:2025-01-23 18:42:58浏览次数:1  
标签:std 化简 专题 auto 复杂度 c++ using include

C++

框架&输入输出

#include <iostream>
using namespace std;
//写了这个之后使用标准库组件前面就不用写std::
int main(){
return 0;
}

输入 std::cin>>x

输出 std::cout<<"hello world"<<std::endl;//std::endl用来换行

格式化输出:

#include <iomanip> // 用于控制输出格式
double pi = 3.14159265358979;
std::cout << "Pi to 2 decimal places: " << std::fixed <<
std::setprecision(2) << pi << std::endl;

std::fixed 表示使用固定的小数点表示法

std::setprecision(n) 控制浮点数字的输出精度

c++语法:

1.auto

声明变量时用auto代替类型名,让编译器自动推导变量类型
例子:
string s;
auto p=s.begin();

2.范围for循环

#include<iostream>
int main(){
for(auto el : {1,1,4,5,1,4}){
std::cout<<el<<' ';
}
return 0;
}

3.使用using定义别名(using TypeA=TypeB;)

#include<map>
template<typename T>
using intTo=std::map<int,T>;
int main(){
intTo<char>map1;//键是int类型,值是char类型的map1
intTo<double>map2;
}

4.Lambda表达式

auto funcName = [&] ](Type1 x1,Type2 x2,...) ->returntype{ };

  1. 记得最后有分号。
  2. 采用[&]时Lambde函数可以修改外部的变量,用[=]不行。
  3. ->returnType可省略。

时间复杂度

定义:时间复杂度是衡量程序效率的量度,它是 语句执行次数T遵循以下规则的化简结果:

  1. 常数项化为1;

  2. 各项的系数化为1;

  3. 只保留最高阶的项;

  4. 忽略对数底数;

记作O(f),其中f是T的化简结果

空间复杂度

1.空间复杂度是衡量程序内存占用的量度,它是变量定义次数的化简结果,采用和时间复杂度完全相同的记号和化简规则。

今日做题小记

使用vector动态数组来定容
struct buz{ char fr; char to; };
cin>>q;
vector<buz>c(q);
根据q的值设动态数组c的容量,防止越界

标签:std,化简,专题,auto,复杂度,c++,using,include
From: https://www.cnblogs.com/sssyyyqqq/p/18688485

相关文章

  • ACM 寒假第一讲:C++ 基础
    1.A-LongLoongProblemStatementForapositiveintegerX,theDragonStringoflevelXisastringoflength(X+3)formedbyoneL,Xoccurrencesofo,onen,andonegarrangedinthisorder.YouaregivenapositiveintegerN.PrinttheDragonStrin......
  • C++模板全解析:场景与注意点揭秘!
    C++作为现代编程语言中的一种,其强大功能和复杂性使得它在系统编程、应用开发等领域广受欢迎。其中,模板(Template)是C++语言中一个极为重要且强大的特性,它不仅提高了代码的复用性,还使得类型无关的编程成为可能。本文将详细介绍C++模板的基础知识,包括其概念、分类、常见应用场景及......
  • C++中static和const的区别和用法
    在C++中,static和const是两个关键字,它们各自有不同的用途和语法。下面是它们的主要区别和用法:const关键字const关键字用于声明一个常量,即该变量的值在初始化后不能被修改。用法:局部变量:voidfunc(){constinta=10;//a是一个常量,值为10,不能在函数内部修改......
  • 第一讲C++
    第一题LongLoongForapositiveintegerX,theDragonStringoflevelXisastringoflength(X+3)formedbyoneL,Xoccurrencesofo,onen,andonegarrangedinthisorder.YouaregivenapositiveintegerN.PrinttheDragonStringoflevelN.Noteth......
  • c++迷宫问题(migong)
    今天的题目叫“迷宫问题(migong)”,是“DFS深度优先搜索递归”一类的。题目描述设有一个N*N(2<=N<10)方格的迷宫,入口和出口分别在左上角和右上角。迷宫格子中分别放0和1,0表示可通,1表示不能,入口和出口处肯定是0。迷宫走的规则如下所示:即从某点开始,有八个方向可走,前进方格中数......
  • c++瓷砖
    今天的题目叫“瓷砖”,是“DFS深度优先搜索递归”一类的。题目描述在一个w×h的矩形广场上,每一块1x1的地面都铺设了红色或黑色的瓷砖。小谢同学站在某一块黑色的瓷砖上,他可以从此处出发,移动到上、下、左、右四个相邻的且是黑色的瓷砖上。现在他想知道,通过重复上述移动所能......
  • 【基础】愤怒的奶牛 USACO c++
    描述FarmerJohn建造了一个有N(2<=N<=100,000)个隔间的牛棚,这些隔间分布在一条直线上,坐标是x1,…,xN(0<=xi<=1,000,000,000)。他的C(2<=C<=N)头牛不满于隔间的位置分布,它们为牛棚里其他的牛的存在而愤怒。为了防止牛之间的互相打斗,FarmerJohn想把这些牛安置在指定的隔间,所......
  • acm 专题一
    一、第一题代码:#include<iostream>usingnamespacestd;#include<string>intmain(){ intn; cin>>n; strings(n,'o'); cout<<'L'<<s<<"ng"; return0;}思路:通过字符串s实现‘o’的n次复制,然后输出二、第二题代码:#inc......
  • 打卡信奥刷题(651)用C++信奥P8396[普及组/提高] [CCC2022 S2] Good Groups
    [CCC2022S2]GoodGroups题目背景请注意:这道题是CCO2022J4GoodGroups的加强版。管理备注:似乎没有加强。题目描述一个班级会被分成ggg个组,每个组有三个人,这......
  • 【动态规划】01背包专题
    01背包在恰好等于的情况下求最小物品数MELON的难题每个物品(石头)的价值w[i]就是其自己的个数,为1体积题目已给出。状态定义:f[i][j]表示在前i个物品中选,且体积总和恰好等于j需要的物品个数的最小值初始化:f[i][0]=0,1<=i<=nf[0][j]=INF,1<=j<=m,答案是f[n][m]......