- 博客(54)
- 收藏
- 关注
原创 c++题目_T318306 上课
接下来n行,每行先读入两个数m[i],k[i],m[i]表示有多少个老师开设,k[i]表示占用的时间段数量,接下来m组数据,每组数据有2k个整数,每连续两个表示一节课的时间,第一个数是星期几(1-5),第二个数是时间段(1-6)classes[i][j]表示第i个课程的第j个时间段,其中时间段是一个pair,包括一个表示天数的整数和一个表示时间的整数。定义常量和变量:代码中定义了常量MAXN、MAXM和MAXK,分别表示最大的课程数、最大的课程时间段数和最大的课程时间数。结构体node表示课程的时间段。
2024-07-23 16:57:53
864
原创 c++_爆刷n题
因此津津制定了一个储蓄计划:每个月的月初,在得到妈妈给的零花钱后,如果她预计到这个月的月末手中还会有多于 100100 元或恰好 100100 元,她就会把整百的钱存在妈妈那里,剩余的钱留在自己手中。最后,程序会输出年度的总支出,考虑到1.2的兑换率。40=4+4+4+4+4+4+4+4+4+440=4+4+4+4+4+4+4+4+4+4 或 40=4+4+4+4+4+5+5+5+540=4+4+4+4+4+5+5+5+5 或 40=5+5+5+5+5+5+5+540=5+5+5+5+5+5+5+5。
2024-07-23 16:47:08
619
原创 c++题目_P1002 [NOIP2002 普及组] 过河卒
如果我们给网格图内的点标号,记从 ii 号点到达 jj 号点的方法数为 f(i,j)f(i,j),ii 号点到 jj 号点的边的条数为 a(i,j)(a(i,j)∈{0,1})a(i,j)(a(i,j)∈{0,1}),那么枚举经过的点 kk,则有 ii 点到 jj 点的方法数 =i=i 点到 kk 点的方法数 ×k×k 点到 jj 点的方法数,形式化的讲,f(i,j)=f(i,k)⋅a(k,j)f(i,j)=f(i,k)⋅a(k,j)。因此,我们连接所有互相可达的点,进行矩阵快速幂即可。
2024-07-20 11:41:04
734
原创 C++题目_中缀表达式转后缀表达式(常考)
输入一行字符串 s (|s| ≤ 100)表示一个合法的中缀表达式,且其中的数字都在INT范围内,同时也保证只会出现 +,-,*,/, (,) 这几种符号。题目链接:hat8.zemeitong.cn/askai/1002?输出一行,表示该中缀表达式所对应的后缀表达式,中间用空格隔开。时间限制: 1.0 Sec 内存限制: 128 MB。给定一个中缀表达式,请你输出其对应的后缀表达式。
2024-07-19 21:50:10
441
原创 C++题目_石子合并
每次只能合并相邻的两堆,合并的代价为这两堆石子的质量之和,合并时由于选择的顺序不同,合并的总代价也不相同。第二步合4 4 ,此时石子为 8 2 5,此时代价为4+(4+4)=12。第三步合2 5 ,此时石子为 8 7,此时代价为12+(2+5)=19。第三步合8 7 ,此时石子为 15,此时代价为19+(8+7)=34。第一步合1 3 ,此时石子为 4 4 2 5,此时代价为1+3=4。问题是:找出一种合理的方法,使总的代价最小,输出最小代价。设有NN堆石子排成一排,其编号为1,2,3,…
2024-07-19 21:47:17
238
原创 c++_算法基础2 STL容器
Standard Template Library (STL) 提供了一系列强大的、高效且可复用的容器,用于存储数据并支持各种操作。
2024-07-15 11:11:28
287
原创 c++_高精度加法 重要!!!
这个问题可以通过将两个大整数从最低位开始逐位相加,并将进位加到下一位来解决。这是一个大整数相加的一般解决方案。有了思路我们开始写code。
2024-07-11 20:31:45
159
原创 c++题目_T332460 魔力石 (详解2 AC)
魔力可以通过震荡的方式激发出来,这是提取魔力的唯一方法,而最好的震荡方式就是聚拢同一频率的魔力石让他们共振,同一频率的魔力石越多,激发过程越顺利。每一个魔力石都有他们自己的频率 𝐴𝑖Ai ,而小明可以使用特别的方法对魔力石的频率进行微调,让它的频率暂时 +1 或者 -1,当然也可以不变。对于 100%100% 的数据,1≤𝑁≤10^6 1≤N≤10^6, 1≤𝐴𝑖≤10^6 1≤Ai≤10^6;小明有一排魔力石,魔力石是一种蕴含魔力的石头,运用得当就能从中提取魔力。我们试试用“桶”(不是桶排序)
2024-07-11 09:42:09
475
1
原创 c++题目_怎么又得数颜色
获奖信息有很多行,每行包含两部分:第一部分是国家名,第二部分表示获奖是金牌、银牌还是铜牌。接下来n行,每行两个空格隔开的字符串表示一条获奖信息,第一个字符串由三个大写字母组成表示国家名,第二个字符串为。每行为空格隔开的一个字符串与四个整数,表示国家名,金牌数量,银牌数量,铜牌数量,奖牌总计。对于 100%的数据,满足1≤n≤1071≤n≤107。对于 60%的数据,满足n≤1000n≤1000;对于 90%的数据,满足n≤106n≤106;对于 30%的数据,满足n≤10n≤10;之一,表示金、银、铜牌。
2024-06-27 19:43:20
389
原创 c++题目_P1443 马的遍历
有一个 n×mn×m 的棋盘,在某个点 (x,y)(x,y) 上有一个马,要求你计算出马到达棋盘上任意一个点最少要走几步。对于全部的测试点,保证 1≤x≤n≤4001≤x≤n≤400,1≤y≤m≤4001≤y≤m≤400。一个 n×mn×m 的矩阵,代表马到达某个点最少要走几步(不能到达则输出 −1−1)。输入只有一行四个整数,分别为 n,m,x,yn,m,x,y。
2024-06-19 20:40:37
118
原创 c++_算法基础1 算法是什么
在C++中,算法通常作为函数或类的一部分来实现,使用标准库中的数据结构如容器(vector、list、set等)和其他工具。常见的复杂度有O(1)(常数时间)、O(log n)(对数时间)、O(n)(线性时间)、O(n^2)(平方时间)等。:除了基本操作,还有许多高级算法,如排序算法(快速排序、归并排序、堆排序等)、搜索算法(二分查找、广度优先搜索、深度优先搜索等)、图算法(最短路径、拓扑排序等)以及动态规划等。在实现算法时,要考虑到数据的特性和操作的复杂度,以及算法的扩展性和维护性。
2024-06-19 20:39:22
402
原创 c++_0基础_讲解8 函数
总的来说,函数作为C++编程中最基本的组成单位,不仅能够提高代码的模块化和复用性,还能够实现特定的功能,是C++编程中不可或缺的重要部分。C++中的函数还支持函数重载、函数模板、递归函数等高级特性,这些特性使得函数在C++中拥有更灵活、更强大的能力,从而满足不同的编程需求。2. 代码的复用:定义的函数可以在程序的不同部分进行多次调用,使得代码的复用变得更加简单。其中,返回类型指定函数的返回值类型,参数类型和参数名定义了函数的参数列表。其中,变量名接收函数的返回值,实参是传递给函数的实际参数。
2024-06-17 20:30:04
266
原创 c++题目_水仙花数
当a * a * a + b * b * b + c * c * c = x时,x就被称为水仙花数。求100-n中的水仙花数。一个数x,x的百位、十位、个位,分别用a、b、c来表示;
2024-06-17 20:14:06
585
1
原创 c++_0基础_讲解7 练习
不难发现,(2,1),(3,2),(4,3),(5,4)(2,1),(3,2),(4,3),(5,4) 都满足行数 −− 列数 =1=1。不难发现,(1,4),(2,3),(3,2),(4,1)(1,4),(2,3),(3,2),(4,1) 都满足行数 ++ 列数 =5=5。对于 100%100% 的数据,保证 1≤n≤2×103,−105≤Ai,j≤1051≤n≤2×103,−105≤Ai,j≤105。,所以并不能出现同时取 4,1,94,1,9 或同时取 4,1,9,24,1,9,2 这样的情况。
2024-06-16 20:07:20
1066
原创 c++题目_第K小的数(进阶)
每组数据第一行包含三个正整数 n,m,k(1≤n,m≤100000,1≤k≤n×m)n,m,k(1≤n,m≤100000,1≤k≤n×m)。,ana1,a2,…请在 n×mn×m 个 ai+bj(1≤i≤n,1≤j≤m)ai+bj(1≤i≤n,1≤j≤m) 中,找到第 kk 小的数(不去重)。,an(1≤ai≤108)a1,a2,…,bm(1≤bi≤108)b1,b2,…第一行包含一个正整数 T(1≤T≤10)T(1≤T≤10),表示测试数据的组数。其他语言 512MB。
2024-06-15 21:58:26
244
原创 c++_0基础_讲解6 循环语句
它是C++中最常用的循环结构之一,提供了灵活的控制循环的方式,能够在各种情况下进行迭代和循环操作。它是处理循环任务时的首选工具,也是多数循环结构的常见形式。在这个示例中,for循环通过初始化i为0,条件i<5,以及迭代器++i,实现对数组arr的遍历输出。总之,C++中的for循环是一种强大而灵活的循环控制结构,能够满足多种循环需求,并通过清晰的语法结构提高代码的可读性和可维护性。- 可以使用break语句在循环体内中断循环,或者使用continue语句跳过本次循环中的剩余代码,直接进行下一次循环的判断。
2024-06-15 21:50:15
477
原创 c++_0基础_讲解5 判断语句
执行顺序是从switch后的"表达式"的值开始匹配case后的值,如果匹配成功则执行对应的"执行语句",并且在执行语句的最后使用break语句来跳出switch语句,否则程序会继续执行下一个case语句。它的基本形式是if(条件表达式){执行语句},其中"条件表达式"是一个布尔表达式,用来决定是否执行花括号中的"执行语句"。判断语句允许程序根据条件判断的结果来选择不同的执行路径。判断语句是实现程序的灵活控制和逻辑判断的重要工具,开发者可以根据具体的需求选择合适的判断语句来实现程序的逻辑功能。
2024-06-14 21:02:13
642
原创 c++_0基础_讲解4 变量定义
C++ 中的变量是存储数据值的容器,这些值可以在程序执行过程中被修改和使用。在 C++ 中,变量必须先声明后使用,声明变量也可以称之为定义变量,它告诉编译器在何处以及如何去分配存储空间。接下来我将对 C++ 中的变量定义进行详细的介绍。在 C++ 中,变量的定义由以下几个部分组成:1. **数据类型**:变量必须有一个数据类型,它决定了变量所占用的内存空间大小和表示范围。C++ 提供了许多内置的数据类型,比如整型(int)、字符型(char)、浮点型(float)、双精度浮点型(double)等。
2024-06-14 20:54:39
346
原创 c++_0基础_讲解3 输入 输出
C++是一种通用的编程语言,支持面向对象编程。它是由Bjarne Stroustrup在1983年创建的,是C语言的一个扩展,为程序员提供了更多的功能和更高的抽象级别。在C++中,输入和输出是非常重要的操作,常用的输入操作是使用`cin`对象,而输出操作是使用`cout`对象。`cin`是一个预定义的对象,用于从标准输入设备读取数据。通过`cin`对象可以接收来自键盘或其他输入设备的输入,并将其存储在变量中。
2024-06-12 21:04:10
751
原创 c++_0基础_讲解2 头文件 基本框架
在C++源文件中,全局声明和定义是指在所有函数外部进行的声明和定义。这包括全局变量、常量、枚举类型、结构体和类等。
2024-06-11 20:55:41
503
原创 c++_0基础_讲解1 认识c++
总之,C++是一种功能强大而灵活的编程语言,它结合了C语言的效率和底层控制能力以及面向对象编程的抽象和可扩展性,适用于各种规模和类型的项目。这种特性使得C++可以编写具有高度通用性和效率的代码,例如容器类(如vector、list等)和算法库(如sort、search等)。它是由Bjarne Stroustrup于20世纪80年代初开发的,旨在为系统编程和应用程序开发提供更强大的功能和灵活性。面向对象编程是C++的重要特性之一。C++继承了C语言的基本语法和特性,包括变量、数据类型、运算符和控制结构等。
2024-06-11 20:47:53
330
原创 c++题目_T307715 风之循环
文文看到了大新闻的迹象,于是就仔细打听了数字之间的距离的定义。河童说两个数字之间的距离定义就是:把两个数都转化为二进制,对应每一位上的0101数字之差之和。对于所有的的数据,2≤n≤10002≤n≤1000,1≤1≤序列中任何一个数字 ≤10000000000≤10000000000。例如:66用二进制表示是(110)2(110)2,而55用二进制表示是(101)2(101)2,所以66和55的距离是22。给定一个序列AA,请问在这个序列中,两个数之间的最大距离是多少。对于20%的数据,n≤4n≤4。
2024-06-11 20:36:40
226
原创 程序员应该有什么职业素养?
简介:你认为对于程序员而言,什么职业素养是最为重要的呢?在你的职业生涯中,有什么切实的案例发生吗?让我们探讨程序员在职业生涯中应具备的职业素养,讲述你在工作中的态度和价值观吧!提示:探讨作为程序员所应具备的持续学习和不断进步的意识,分享学习方法与进步经验。提示:谈谈作为程序员所应具备的沟通能力和团队合作意识,可以从实际工作中切入。提示:探讨作为程序员所应具备的专业精神,分享程序员对技术执着追求的故事。
2024-06-10 09:52:15
173
原创 C++_题目 P2678 [NOIP2015 提高组] 跳石头
将与起点距离为 22 和 1414 的两个岩石移走后,最短的跳跃距离为 44(从与起点距离 1717 的岩石跳到距离 2121 的岩石,或者从距离 2121 的岩石跳到终点)。第一行包含三个整数 L,N,ML,N,M,分别表示起点到终点的距离,起点和终点之间的岩石数,以及组委会至多移走的岩石数。对于 100%100% 的数据,0≤M≤N≤50000,1≤L≤1090≤M≤N≤50000,1≤L≤109。对于 50%50% 的数据,0≤M≤N≤1000≤M≤N≤100。一个整数,即最短跳跃距离的最大值。
2024-06-08 22:14:27
642
原创 c++题目_P1546 [USACO3.1] 最短网络 Agri-Net
接下来是一个 𝑁×𝑁的矩阵,表示每个农场之间的距离。理论上,他们是 𝑁 行,每行由 𝑁 个用空格分隔的数组成,实际上,由于每行 8080 个字符的限制,因此,某些行会紧接着另一些行。FJ 已经给他的农场安排了一条高速的网络线路,他想把这条线路共享给其他农场。为了用最小的消费,他想铺设最短的光纤去连接所有的农场。你将得到一份各农场之间连接费用的列表,你必须找出能连接所有农场并所用光纤最短的方案。第一行农场的个数 𝑁N(3≤𝑁≤1003≤N≤100)。只有一输出,其包含连接到每农场的光纤的最小长度。
2024-06-01 09:00:18
255
原创 c++题目_爆肝3题
先按总分从高到低排序,如果两个同学总分相同,再按语文成绩从高到低排序,如果两个同学总分和语文成绩都相同,那么规定学号小的同学排在前面,这样,每个学生的排序是唯一确定的。然后,程序根据总分和规则进行排序。排序规则是先按照总分从高到低排序,如果两个学生的总分相同,再按照语文成绩从高到低排序,如果总分和语文成绩也相同,那么学号小的学生排在前面。从第二行开始,每行包含 22 个整数,中间用一个空格隔开,分别表示进入面试的选手的报名号和笔试成绩,按照笔试成绩从高到低输出,如果成绩相同,则按报名号由小到大的顺序输出。
2024-05-27 21:04:06
754
原创 c++题目_农场和奶牛
𝐵B 头奶牛 (1≤𝐵≤25000)(1≤B≤25000),有 𝑁(2×𝐵≤𝑁≤50000)N(2×B≤N≤50000) 个农场,编号 11 到 𝑁N,有 𝑀(𝑁−1≤𝑀≤100000)M(N−1≤M≤100000) 条双向边,第 𝑖i 条边连接农场 𝑅𝑖Ri 和 𝑆𝑖(1≤𝑅𝑖≤𝑁,1≤𝑆𝑖≤𝑁)Si(1≤Ri≤N,1≤Si≤N),该边的长度是 𝐿𝑖(1≤𝐿𝑖≤2000)Li(1≤Li≤2000)。
2024-05-25 10:13:28
541
原创 c++题目_守望者的逃离
恶魔猎手尤迫安野心勃勃.他背叛了暗夜精灵,率深藏在海底的那加企图叛变:守望者在与尤迪安的交锋中遭遇了围杀.被困在一个荒芜的大岛上。为了杀死守望者,尤迪安开始对这个荒岛施咒,这座岛很快就会沉下去,到那时,岛上的所有人都会遇难:守望者的跑步速度,为17m/s, 以这样的速度是无法逃离荒岛的。现在已知守望者的魔法初值M,他所在的初始位置与岛的出口之间的距离S,岛沉没的时间T。你的任务是写一个程序帮助守望者计算如何在最短的时间内逃离荒岛,若不能逃出,则输出守望者在剩下的时间内能走的最远距离。距离的单位为米(m)。
2024-05-12 09:22:15
249
原创 c++题目_饭卡
电子科大本部食堂的饭卡有一种很诡异的设计,即在购买之前判断余额。如果购买一个商品之前,卡上的剩余金额大于或等于5元,就一定可以购买成功(即使购买后卡上余额为负),否则无法购买(即使金额足够)。某天,食堂中有n种菜出售,每种菜可购买一次。已知每种菜的价格以及卡上的余额,问最少可使卡上的余额为多少。对于每组输入,输出一行,包含一个整数,表示卡上可能的最小余额。第二行包括n个正整数,表示每种菜的价格。第三行包括一个正整数m,表示卡上的余额。第一行为正整数n,表示菜的数量。他是01背包,很简单,于是。
2024-05-05 16:24:39
524
空空如也
c++_T319777 子序列问题
2024-07-24
c++ T318517 括号序列
2024-07-24
C++ T318306 上课
2024-07-22
C++ T318306 上课
2024-07-22
3291 问题 H: bitset练习(选做)
2024-07-15
c++—问题 T303361 空之青,海之蓝
2024-05-31
c++2959 问题 L: 卡车运输
2024-05-25
c++ 问题 疯狂动物城报名
2024-05-25
c++ 代码 缩短复杂度
2024-05-23
c++_鼠鼠找然然_问题
2024-05-08
c++_单源最短路求解
2024-05-04
c++——输出111...的难题
2024-04-27
c++T337181 刷墙
2024-03-21
TA创建的收藏夹 TA关注的收藏夹
TA关注的人