![](https://img-blog.csdnimg.cn/20190927151132530.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
枚举和模拟
xiedongbiao
随着记忆 消逝在风中
展开
-
AtCoder Beginner Contest 264 部分题解
ABC原创 2022-08-14 09:19:24 · 470 阅读 · 0 评论 -
洛谷AT2066 [ABC045B] 3人でカードゲームイージー / Card Game for Three (ABC Edit)
传送门题意翻译题目描述Alice,Bob和Charlie在玩 Card Game for Three开始时,每名玩家有一叠由卡牌组成的牌堆。每张牌上有一个字母 a,b或c。 卡牌的顺序不能被改变。 Alice先开始 玩家的牌堆中至少有一张牌,当前玩家从牌堆顶抽出一张牌,这张牌代表的玩家进行下一回合(a->alice,b->bob,c->charlie) 如果当前玩家的牌堆空了,游戏结束,这名玩家胜利你得到了每名玩家最初的牌堆,字符串S a,S b,S c。从左往右抽原创 2022-01-26 15:03:18 · 2880 阅读 · 0 评论 -
洛谷AT2828 和がNの区間
题目传送门题意翻译给你一组n的排列,记为AiA_iAi,问存在多少对L,R,满足(∑i=LRAi)=n(\sum\limits_{i=L}^R A_i)=n(i=L∑RAi)=n说明1 ≤ N ≤ 100,0001\ \leq\ N\ \leq\ 100,0001 ≤ N ≤ 100,000思路:看到求和有些人就开始暴力了于是老朋友(祖宗)都来了------WA,TLE,RE…于是转念一想:用前缀和来做原创 2022-01-23 11:03:28 · 1135 阅读 · 0 评论 -
寻宝(枚举,模拟)
Description传说很遥远的藏宝楼顶层藏着诱人的宝藏。 小明历尽千辛万苦终于找到传说中的这个藏宝楼,藏宝楼的门口竖一个 木板,上面写有几个大字:寻宝说明书。 说明书的内容如下: 藏宝楼共有N+1层,最上面一层是顶层,顶层有一个房间里面藏着宝藏。 除了顶层外,藏宝楼另有N层,每层M个房间, 这M个房间围成一圈并按逆时针方向依次编号为0,…,M-1。 其中一些房间有通往上一层的楼梯,每层楼的楼梯设计可能不同。 每个房间里有一个指示牌,指示牌上有一个数字x,表示从这个房间开始按逆时针方向选择第x个有楼梯原创 2021-10-02 17:15:27 · 182 阅读 · 0 评论 -
王唐的疑问
王唐今天上课学到了比12小且与之互质的有1,5,7,11.则1是与12互质的第1个数字。则5是与12互质的第2个数字。则7是与12互质的第3个数字。则11是与12互质的第4个数字。如果将范围放大一些,求与12互质的第N个数字是多少?聪明的王唐瞬间秒杀了,现在请你来回答下这个问题FormatInput一个数字N,N<=100000输入5输出13思路:其实这道题很水,直接用系统自带函数就行了CODE:#include <bits/stdc原创 2021-08-27 21:22:54 · 125 阅读 · 0 评论 -
机房的窗户
机房的窗户是一个n行m列的方格阵,最外圈的方格是红色的,其余方格是黑色的。 给出红色方格的个数r和黑色方格的个数b,请给出一组可行的n,m的取值。输入输入只有一行两个整数,分别表示红色方格的个数r和黑色方格的个数b。 8≤r≤2×10 ^6 1≤b≤2×10 ^6 数据保证至少存在一组解输出输出一行两个整数,分别表示方格阵的行数n和列数m。 如果有多组解,请输出n最大的一组。输入8 1输出3 3思路:枚举,条件是(n-1+m-1)*2==r&&(n-原创 2021-08-28 11:47:08 · 207 阅读 · 0 评论 -
整数拆段(c++)
将一个位数为L(4≤L≤10)的自然数N拆成4段,使各段对应的数的乘积最小。输出这个最小乘积。FormatInput一个自然数N。Output一个整数,最小乘积。输入数据321427输出数据2268思路:可以用暴力枚举来做,定义一个len来保存长度就行了CODE:#include<bits/stdc++.h>using namespace std;char a[11];int fun(int l,int r) {//把a[l~r]..原创 2021-08-29 10:19:15 · 775 阅读 · 0 评论 -
纯粹素数2
纯粹素数是这样定义的:一个素数,去掉最高位,剩下的数仍为素数,再去掉剩下的数的最高位,余下的数还是素数。这样下去一直到最后剩下的个位数也还是素数。现给出一个数字N,求小于N的纯粹素数FormatInput一行给出一个数字N,N<=100000Output按从小到大的顺序输出若干个纯粹素数,每行一个。输入数据 115输出数据 1235713 思路:这道题与上一题不一样的是,这次的N不知道多少位了,只需要再来一个算N有几位的函数了。。CODE:原创 2021-08-30 15:56:09 · 673 阅读 · 2 评论 -
纯粹素数
纯粹素数是这样定义的:一个素数,去掉最高位,剩下的数仍为素数,再去掉剩下的数的最高位,余下的数还是素数。这样下去一直到最后剩下的个位数也还是素数。求出所有小于3000的四位的纯粹素数。Output按从小到大的顺序输出若干个纯粹素数,每行一个。思路:一个个枚举就好了。假设n=1223判断1223为素数,模1000为223判断223为素数,模100为23判断23为素数,模10为3判断3为素数,1223为素数CODE:#include<bits/stdc++.h&g原创 2021-08-30 15:49:15 · 2358 阅读 · 0 评论 -
钱币组合加强版本
小明手上有 五!!!张纸币(他的钱很奇怪,可以是任意的正整数),现在他想知道用这五种纸币可以组合出多少种不同的总额出来,且这个总额是大于0的。 一行五个正整数,总和不超过10000输入一行给出五个数字输出如题思路:只要用5个循环就行了CODE:#include<bits/stdc++.h>using namespace std;int f[10000];int main() { int a,b,c,d,e; cin>>a>&...原创 2021-08-31 11:24:27 · 107 阅读 · 0 评论 -
钱币组合
小明手上有三张纸币(他的钱很奇怪,可以是任意的正整数),现在他想知道 用这三种纸币可以组合出多少种不同的总额出来,总额的值应大于0输入一行三个正整数,总和不超过10000输出如题思路:用三个for循环来枚举三种钱币的状态,0代表没有用,1代表用了CODE:#include<bits/stdc++.h>using namespace std;int f[10000];int main() { int a,b,c; cin>>a>>b&原创 2021-08-31 11:21:40 · 282 阅读 · 0 评论