题解系列
return_dr
蒟蒻
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
数字三角形(洛谷P1216)基础dp
传送门原创 2022-07-11 09:02:49 · 262 阅读 · 0 评论 -
c++子集枚举
相信大家都做过 烤鸡 这道题。但 101010 个循环实在太麻烦。若要 100、1000100、1000100、1000 个循环呢? 子集枚举! 文章目录一、子集枚举的定义二、代码实现三、例题P1657 选书时间限制内存限制题目描述输入格式输出格式输入输出样例输出 #1复制说明/提示分析四、复杂度分析 一、子集枚举的定义 什么是子集枚举? 对于一个数据,若每个数据只有 222 种状态,例如:选或不选,选第一种或第二种……这时,子集枚举就成为一种很好的选择。 因为每个数据只有 222 种状态,由此想到原创 2022-02-21 13:09:30 · 1565 阅读 · 0 评论 -
表达式求值(目前只有加和乘)
可以求多个数的相加、相乘,但不能有括号(好吧,很鸡肋) #include<bits/stdc++.h> using namespace std; long long a[101010],cnt=1,sum=0; char c[101010]; int main(){ scanf("%lld",&a[cnt]); a[cnt]%=10000; while(cin>>c[cnt]){ cin>>a[++cnt];原创 2021-10-16 20:40:00 · 228 阅读 · 0 评论 -
次大值 P5682 [CSP-J2019 江西]
#include<bits/stdc++.h> using namespace std; long long n; //习惯 long long a[200005]; //多年OI一场空,不开long long见祖宗 int main(){ cin>>n; for(int i=1;i<=n;i++){ cin>>a[i]; } sort(a+1,a+1+n); //排序函数sort n=unique(a+1,a+1+n)-a-1; //.原创 2021-10-11 21:36:23 · 706 阅读 · 0 评论 -
龙虎斗 (洛谷 P5016)
题目描述 轩轩和凯凯正在玩一款叫《龙虎斗》的游戏,游戏的棋盘是一条线段,线段上有n个兵营(自左至右编号 1∼n),相邻编号的兵营之间相隔1厘米,即棋盘为长度为 n−1厘米的线段。i号兵营里有ci位工兵。 下面图 1 为 n=6的示例: 轩轩在左侧,代表“龙”;凯凯在右侧,代表“虎”。 他们以mm号兵营作为分界, 靠左的工兵属于龙势力,靠右的工兵属于虎势力,而第mm号兵营中的工兵很纠结,他们不属于任何一方。 一个兵营的气势为:该兵营中的工兵数\times×该兵营到mm号...原创 2021-10-10 10:59:58 · 476 阅读 · 0 评论 -
CSP模拟——color
不多说了哈,直接上代码得了——: #include<bits/stdc++.h> using namespace std; int n,m,sum,sumw,sumr,sumb; char a[55][55]; bool flagr=false,flagb=false; int color_w(int p){ for(int i=1;i<=m;i++){ if(a[p][i]!='W'){ sumw++; } } } int color_r(int p){ f...原创 2021-10-04 17:47:36 · 212 阅读 · 0 评论 -
CSP模拟——triangle
如图。 那么如何实现代码呢? 首先,无论它能否组成三角形,都是最大的一个(或两个)数操作。 所以我们先要对它排序。 排完序后就好做很多。步骤如下: 1.判断是否为直角三角形,用勾股定理: 2.如果是,输出最大数的平方。 如果不是,输出最大数和第二大数的平方和。 代码如下: #include<bits/stdc++.h> using namespace std; int a[4]; //为了排序方便点 int main(){ // freopen("trian...原创 2021-10-04 10:29:30 · 169 阅读 · 0 评论 -
论高精度(加减乘)(附洛谷 P1601 、 P2142 题解)
题目描述 输入两个整数a, b,输出它们的和(∣a∣,∣b∣≤109)。 注意 Pascal 使用 integer 会爆掉哦! 有负数哦! C/C++ 的 main 函数必须是 int 类型,而且 C 最后要 return 0。这不仅对洛谷其他题目有效,而且也是 NOIP/CSP/NOI 比赛的要求! 好吧,同志们,我们就从这一题开始,向着大牛的路进发。 任何一个伟大的思想,都有一个微不足道的开始。 输入格式 两个以空格分开的整数。 输出格式 一个整数。 输入输出样例 输入 #.原创 2021-09-27 22:52:53 · 352 阅读 · 0 评论 -
小A点菜 (洛谷 P1164)
P1164 小A点菜 提交73.09k 通过38.38k 时间限制1.00s 内存限制128.00MB 提交答案加入题单 复制题目 题目提供者洛谷 难度普及- 历史分数100 提交记录查看题解 标签 洛谷原创 查看算法标签 进入讨论版 相关讨论 查看讨论 推荐题目 查看推荐 洛谷推荐关闭 展开 题目背景 uim神犇拿到了uoi的ra(镭牌)后,立刻拉着基友小A到了一家……餐馆,很低端的那种。 uim指着墙上的价目表(太低级了没...原创 2021-09-26 22:54:39 · 143 阅读 · 0 评论 -
数楼梯 (洛谷P1225)
题目传送门 话说这道题和 蜜蜂路线(洛谷P2437)有异曲同工之妙…… 蜜蜂路线(洛谷P2437)题目传送门 蜜蜂路线(洛谷P2437) 题解传送门 //不加注释了哈 #include<bits/stdc++.h> using namespace std; int p[6000][6000]; int length=1; void f(int a){ for(int i=1;i<=length;i++){ p[a][i]=p[a-1][i]...原创 2021-09-25 22:35:05 · 320 阅读 · 0 评论 -
蜜蜂路线 (洛谷P2437)
题目传送门 话说这道题不就是高精度的斐波那契吗…… 和 数楼梯 (洛谷 P1225)有异曲同工之妙…… 数楼梯 P1225 题目传送门 题目背景 无 题目描述 一只蜜蜂在下图所示的数字蜂房上爬动,已知它只能从标号小的蜂房爬到标号大的相邻蜂房,现在问你:蜜蜂从蜂房 m开始爬到蜂房n,m<n,有多少种爬行路线?(备注:题面有误,右上角应为n-1) 输入格式 输入m,n 的值 输出格式 爬行有多少种路线 输入输出样例 输入 #1复制 1 14 输出...原创 2021-09-25 22:30:16 · 280 阅读 · 0 评论 -
南蛮图腾 (洛谷 P1498)
题目传送门 题目描述 自从到了南蛮之地,孔明不仅把孟获收拾的服服帖帖,而且还发现了不少少数民族的智慧,他发现少数民族的图腾往往有着一种分形的效果,在得到了酋长的传授后,孔明掌握了不少绘图技术,但唯独不会画他们的图腾,于是他找上了你的爷爷的爷爷的爷爷的爷爷……帮忙,作为一个好孙子的孙子的孙子的孙子……你能做到吗? 输入格式 每个数据一个数字,表示图腾的大小(此大小非彼大小) n<=10 输出格式 这个大小的图腾 输入输出样例 输入 #1 2 输出 #1 /\ /__\原创 2021-09-25 21:54:05 · 1036 阅读 · 0 评论 -
数的计算 (洛谷 P1028)
递归算法。 #include<bits/stdc++.h> using namespace std; int n; int s[1005]; int f(int m){ if(s[m]) return s[m]; //记忆化搜索,如果算过方案数,直接加上 int sum=1; //算上自己的那一种 for(int i=1;i<=m/2;i++){ //题意,加到一半 sum+=f(i); //递归 } s[m]=sum; //记忆化搜索 return sum;原创 2021-09-25 14:59:05 · 105 阅读 · 0 评论 -
选数(洛谷P1036)
题目传送门 题目描述 已知n 个整数 x1,x2,⋯,xn,以及1个整数k(k<n)。从n个整数中任选k个整数相加,可分别得到一系列的和。例如当n=4 , k=3,4 个整数分别为3,7,12,19 时,可得全部的组合与它们的和为: 3+7+12=22 3+7+19=29 7+12+19=38 3+12+19=34 现在,要求你计算出和为素数共有多少种。 例如上例,只有一种的和为素数:3+7+19=29 输入格式 第一行两个空格隔开的整数n,k(1≤n≤...原创 2021-09-24 23:16:41 · 276 阅读 · 0 评论 -
递归函数详解(包含洛谷P2386题解)
先来看一道题:洛谷P2386 把m 个同样的苹果放在n个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分法。(5,1,1 和 1,1,5是同一种方法) 输入格式 第一行是测试数据的数目tt,以下每行均包括二个整数mm和nn,以空格分开。 输出格式 对输入的每组数据mm和nn,用一行输出相应的结果。 输入输出样例 输入 #1 1 7 3 输出 #1 8 输入 #2 3 3 2 4 3 2 7 输出 #2 2 4 2 说明/提示 对于所有...原创 2021-09-15 22:40:09 · 478 阅读 · 0 评论 -
约瑟夫问题(洛谷P1996)
这是循环的做法,之后还会有其他的算法。 洛谷P1996 题目传送门 题目描述 n个人围成一圈,从第一个人开始报数,数到mm的人出列,再由下一个人重新从11开始报数,数到m的人再出圈,依次类推,直到所有的人都出圈,请输出依次出圈人的编号。 注意:本题和《深入浅出-基础篇》上例题的表述稍有不同。书上表述是给出淘汰 n-1 名小朋友,而该题是全部出圈。 输入格式 输入两个整数n,m。 输出格式 输出一行n个整数,按顺序输出每个出圈人的编号。 输入输出样例 输入 #1复制 10 ...原创 2021-09-15 23:11:44 · 495 阅读 · 0 评论
分享