zl程序教程

CodeForces 656B

  • Codeforces Round #806 (Div. 4)(A~F)

    Codeforces Round #806 (Div. 4)(A~F)

    A. YES or YES?题目大意Origional Link判断是否是yes顺序的不区分大小写的字符串是则输出YES,否则输出NO思想读入暴力判断代码#include <bits/stdc++.h> using namespace std; void solve(){ string s; cin >> s; bool flag = 1;

    日期 2023-06-12 10:48:40     
  • Edu Codeforces Round 115 (Div. 2)

    Edu Codeforces Round 115 (Div. 2)

    #NameAComputer Game 2 s, 256 MBx8894BGroups 4 s, 256 MBx5935CDelete Two Elements 2 s, 256 MBx4419DTraining Session 2 s, 256 MBx1583EStaircases 2 s, 256 MBx442FRBS3 s, 512 MBx159GThe Sum of Good Number

    日期 2023-06-12 10:48:40     
  • Codeforces Round #813 (Div. 2)(A~C)

    Codeforces Round #813 (Div. 2)(A~C)

    A. Wonderful Permutation题目大意Origional Link给定长度为 n 的数组 a,元素互不相同每次可选择 a_i,a_j 进行交换求使得长度为 k 的子序列之和达到最小的交换次数思想对于子序列的和最小,应遵循最小排列即判断原序列中,前 k 个元素,有多少满足 a_i\le k,满足该条件则不需要交换,否则需要交换代码#include <bits/stdc++.h

    日期 2023-06-12 10:48:40     
  • Codeforces Round #825 (Div. 2) (A~C1)

    Codeforces Round #825 (Div. 2) (A~C1)

    A. Make A Equal to BOrigional Link题目大意:给定只含 0,1 的序列 a,b。对序列 a 不限次数执行如下操作: 将 a_i 变为 a_i - 1 。 将 a 按照任意顺序重新排列。 求最少几步可以得到和 b 相同的序列 a。思想: 思维题。分为两种情况讨论:不排序 a 直接操作和先排序 a 再操作的情况。 同时遍历一遍 a 和 b,记录 a[i] != b[

    日期 2023-06-12 10:48:40     
  • Educational Codeforces Round 137 (Rated for Div. 2)(A~E)

    Educational Codeforces Round 137 (Rated for Div. 2)(A~E)

    D和E在补了,在补了。。。A. PasswordOrigional Link题目大意:给定 n 个 0\sim 9 之间不能使用的数字,保证剩余的数大于 2。任意两个数子组合,每个数字可使用两次,组成一个四位密码。求在剩余的可选数字中,能组成的密码数量。思想:签到题。任意两个数字可组成的密码数量固定为 6。则总数量为剩余数字中的两两组合的数量乘 6。即设剩余的数的数量为 x = 10 - n,总密

    日期 2023-06-12 10:48:40     
  • Codeforces Global Round 23(A~C)

    Codeforces Global Round 23(A~C)

    A. MaxminaOrigional Link题目大意:给定长度为 n 只包含 0,1 的序列 a,和一个整数 k,保证 (2\le k\le n\le 50)。不限次数进行如下操作: 将连续且相邻的两个元素变为较小的一个。 将连续的 k 个区间的元素变为区间内元素最大的哪一个。 求给出的序列是否可以变为只包含 1 的序列。思想:签到题。保证 (2\le k\le n\le 50) 即保证了

    日期 2023-06-12 10:48:40     
  • Codeforces Round#806(Div.4) 题解

    Codeforces Round#806(Div.4) 题解

    哈哈哈又写题解了!CF链接 A YES or YES? 英文题面看这里 解释输入N个字符串,不管大小写,判断是否为“yes” 思路挨个字母判断是否大写,如果大写就转换成小写,最后判断是否为“yes”。那怎么判断是否为“yes”呢?直接==可以吗?似乎不行(我用的char x[4]),所以我们用最原始的方法:x[0] == 'y' && x[1] == '

    日期 2023-06-12 10:48:40     
  • A. Vasya and Book ( Codeforces   Educational Codeforces Round 55 )

    A. Vasya and Book ( Codeforces Educational Codeforces Round 55 )

    题意:当前在看书的第 x 页,每次可以向前或者向后翻 d 页,这个书一共 n 页,问能否用最小操作翻到第 y 页。 题解:三种情况:1、直接翻能到的一定最短。 2、先翻到第一页,然后往后翻,翻到第 y 页。3、先翻到第 n 页,然后往前翻,翻到第 y 页。#include<bits/stdc++.h> using namespace std; typedef long long l

    日期 2023-06-12 10:48:40     
  • A. Be Positive 【 Codeforces Round #542 [Alex Lopashev Thanks-Round] (Div. 2) 】

    A. Be Positive 【 Codeforces Round #542 [Alex Lopashev Thanks-Round] (Div. 2) 】

    Codeforces Round #542 [Alex Lopashev Thanks-Round] (Div. 2) 题意:给你 n 个数,找个 d 让这个 n 个数除以 d 之后大于零的数至少是 n / 2 个。&:分类一下,输出 1 或者 -1 或者 0 就可以了。#include<bits/stdc++.h> using namespace std; int a[2

    日期 2023-06-12 10:48:40     
  • Codeforces 842B Gleb And Pizza几何,水详解编程语言

    Codeforces 842B Gleb And Pizza几何,水详解编程语言

    Gleb ordered pizza home. When the courier delivered the pizza, he was very upset, because several pieces of sausage lay on the crust, and he does not really like the crust. The pizza is a circle of r

    日期 2023-06-12 10:48:40     
  • CodeForces - 282A Bit++ (水)

    CodeForces - 282A Bit++ (水)

    CodeForces - 282A Bit++ Submit Status DescriptionThe classic programming language of Bitland is Bit++. This language is so peculiar and complicated.The language is that peculiar as it h

    日期 2023-06-12 10:48:40     
  • CodeForces - 557B Pasha and Tea (模拟)

    CodeForces - 557B Pasha and Tea (模拟)

    CodeForces - 557B Pasha and Tea Submit Status DescriptionPasha decided to invite his friends to a tea party. For that occasion, he has a large teapot with the capacity of w mi

    日期 2023-06-12 10:48:40     
  • codeforces Gargari and Bishops(很好的暴力)

    codeforces Gargari and Bishops(很好的暴力)

    /* 题意:给你一个n*n的格子,每一个格子都有一个数值!将两只bishops放在某一个格子上, 每一个bishop可以攻击对角线上的格子(主对角线和者斜对角线),然后会获得格子上的 数值(只能获取一次)。要求输出两个bishops获取的最大值以及它们所在的位置! 思路:直接暴力!....不错的暴力题目! 首先我们都知道每一条主对角线上的横纵坐标的和相同,每一条副对角线上的横

    日期 2023-06-12 10:48:40     
  • codeforces——Little Pony and Expected Maximum

    codeforces——Little Pony and Expected Maximum

    所以最后的结果=sum((k/m)^n - ((k-1)/m)^n) (1 =k =m) 不要这样求(k^n/m^n)数据可能会很大! #include iostream #include cstdio #include cmath using namespace std; int main(){ int n, m; while(cin m n){ double

    日期 2023-06-12 10:48:40     
  • codeforces B. Strongly Connected City(dfs水过)

    codeforces B. Strongly Connected City(dfs水过)

    题意:有横向和纵向的街道,每个街道只有一个方向,垂直的街道相交会产生一个节点,这样每个节点都有两个方向,问是否每一个节点都可以由其他的节点到达....思路:规律没有想到,直接爆搜!每一个节点dfs一次,记录每个节节点被访问的次数!如果每个节点最终的访问次数和所有节点的数目相同,则输出“YES", 否则输出”NO“ #include queue #include string #inc

    日期 2023-06-12 10:48:40     
  • codeforces C. Bits(数学题+或运算)

    codeforces C. Bits(数学题+或运算)

    题意:给定一个区间,求区间中的一个数,这个数表示成二进制的时候,数字1的个数最多!如果有多个这样的数字,输出最小的那个!思路:对左区间的这个数lx的二进制 从右往左将0变成1,直到lx的值大于右区间的值rx! #include iostream #include cstring #include cstdio #include algorithm using namespac

    日期 2023-06-12 10:48:40     
  • 【Educational Codeforces Round 102 D】Program

    【Educational Codeforces Round 102 D】Program

    题目链接 链接 翻译 给你一个长度为 \(n\) 的序列,每个字符为加法或减法操作,这些操作按顺序执行,且初始的时候你的数字为 \(0\)。 现在给你 \(m\) 个询问,这些询问用区间 (l,r) 描述,表示从 \(l\) 开始到 \(r\) 结束这一段的操作被忽略了。 然后剩下的操作还是按顺序执行的话,问你最后在数字变化的过程中,会出现多少个不同的数字。 题解 首先不同的数字个数,就是在变换

    日期 2023-06-12 10:48:40     
  • 【Codeforces Round #695 (Div. 2) B】Hills And Valleys

    【Codeforces Round #695 (Div. 2) B】Hills And Valleys

    题目链接 链接 翻译 让你统计"山"和“山谷"的总个数,要求这个总个数最少。 你可以修改某个数字为任意整数。 题解 首先对于初始的数组,统计一下山加上山谷的总数\(cnt\) 然后枚举第 \(i\) 个位置,现在要对第 \(i\) 个位置上的数字进行修改了。 最直接的想法就是,改了 \(a[i]\) 之后,哪些位置上的山顶和山谷的值会受到影响呢? 只有 \(i-1,i,i+1\) 这 \(3\)

    日期 2023-06-12 10:48:40     
  • 【Codeforces Round #695 (Div. 2) A】Wizard of Orz

    【Codeforces Round #695 (Div. 2) A】Wizard of Orz

    题目链接 链接 翻译 translation 题解 98901234.... 写题解的时候才发现题目名字里有个ORZ 代码 /* */ #include <bits/stdc++.h> using namespace std; int main(){ #ifdef LOCAL_DEFINE freopen("in.txt", "r", stdin); #endif

    日期 2023-06-12 10:48:40     
  • 【Codeforces Round #693 (Div. 3) C】Long Jumps

    【Codeforces Round #693 (Div. 3) C】Long Jumps

    题目链接 链接 翻译 translation 题解 动规。 \(f[i] = f[i+a[i]]+a[i]\) 类似这样?...倒着推一下,注意边界就行。 代码 #include <bits/stdc++.h> #define lson l,mid,rt*2 #define rson mid+1,r,rt*2+1 #define LL long long using namespac

    日期 2023-06-12 10:48:40     
  • 【Codeforces Round #693 (Div. 3) F】New Year's Puzzle

    【Codeforces Round #693 (Div. 3) F】New Year's Puzzle

    题目链接 链接 翻译 给你一个 \(2*n\) 的方格,让你用 \(1*2\) 的骨牌,横着或者竖着放,铺满整个方格。 其中有一些被黑色方块阻挡,不能放骨牌。问你可不可行。 题解 首先考虑 整个方格 第一列,如果两行都是空的。 那么考虑第二列的几种情况: 第二列也是空的,那么第一列放竖的没问题。 第二列有一个方格被堵住了,那么第一列只能竖着放了,不然铺不满(注意这是第一列,它之前没有列了) 第

    日期 2023-06-12 10:48:40     
  • 1800*1【Codeforces Round #665 (Div. 2) D】Maximum Distributed Tree

    1800*1【Codeforces Round #665 (Div. 2) D】Maximum Distributed Tree

    题目链接 链接 翻译 让你给树上的每条边分配一个数字。要求这 \(n-1\) 个数的乘积要等于 \(k\) 分配的 \(1\) 的个数要尽可能少。 这个 \(k\) 质因数分解的时候,每个质因子的指数都是 \(1\),且 \(k\) 是以告诉你它每个质因子的形式给出的。 要求树上任意两点之间的距离和最大。输出这个最大值。 题解 感觉证明做法的正确性会比做法本身难。。 首先解决两点之间距离和这个问

    日期 2023-06-12 10:48:40     
  • 【Codeforces 1329A】Dreamoon Likes Coloring

    【Codeforces 1329A】Dreamoon Likes Coloring

    题目链接 链接 翻译 让你按顺序对连续的点进行染色(总共有 \(m\) 个连续块需要染色) 你可以指定这个连续块的区间,但是长度必须是 \(li\) (但不能超过边界) 然后后面的染色会覆盖前面的染色,且每个连续块的染色(要染的颜色)都不一样。 要求 \(m\) 次染色过后,所有 \(m\) 种颜色都至少还存在一个位置。且每个点(1-n)都至少被染色过一次。 题解 两种情况: 第 \(1\) 种

    日期 2023-06-12 10:48:40     
  • 【Codeforces Round #644 (Div. 3) F】Spy-string

    【Codeforces Round #644 (Div. 3) F】Spy-string

    题目链接 链接 翻译 让你构造一个和 \(n\) 个字符串都只有【最多一个地方】不同的字符串 题解 只考虑第一个字符串,假设第 \(i\) 个位置不同,那么每个位置都有 \(26\) 种可能(其中一种是和本身一样) 看看得到的字符串是不是符合要求的就好。 代码 #include <iostream> #include <string> using namespace st

    日期 2023-06-12 10:48:40     
  • 【Codeforces Round #629 (Div. 3) D】Carousel

    【Codeforces Round #629 (Div. 3) D】Carousel

    题目链接 链接 翻译 给你两种重量的物品, 重量分别为 \(S\) 和 \(W\), 数量分别为 \(cntS\) 和 \(cntW\)。 有两个人,第一个人的背包容量为 \(p\), 第二个人的背包容量为 \(f\)。要让这两个人拿走的物品的数量之和最大。 问你最大可能为多少。 即有数量限制,物品价值都相同为 \(1\) 要求最大数量。 题解 中间枚举的量记得要还原 代码 #include

    日期 2023-06-12 10:48:40     
  • 【Codeforces Round #639 (Div. 2) A】Puzzle Pieces

    【Codeforces Round #639 (Div. 2) A】Puzzle Pieces

    题目链接 点我呀 翻译 给你一个拼图, 问你能不能把它拼成一个 \(n \times m\) 的方格图。 题解 会发现, 只有 \(2 \times 2\) 的能拼出来, 或者是一个长条形的。 往下或者往右一直延伸这样, 然后宽度或高度为1。 代码 #include<bits/stdc++.h> #define ll long long #define rei(x) scanf("%

    日期 2023-06-12 10:48:40     
  • 【Codeforces Round #635 (Div. 2) B】Kana and Dragon Quest game

    【Codeforces Round #635 (Div. 2) B】Kana and Dragon Quest game

    题目链接 点我呀 翻译 给你一个初始数字x, 你可以对它做两种操作: 1.整除2然后加上10 2.减去10 问你在n次1操作和m次2操作之内, 能不能把数字x变成是小于0的。 题解 n和m都小于30? 这不傻逼题吗? dp[i][j]表示i次1操作,j次1操作x能到达的最小值。 \(dp[i][j] = min(dp[i-1][j]/2+10,dp[i][j-1] - 10)\) 最

    日期 2023-06-12 10:48:40     
  • 【Codeforces Round #667 (Div. 3) F】Subsequences of Length Two

    【Codeforces Round #667 (Div. 3) F】Subsequences of Length Two

    题目链接 点我呀 翻译 你可以把字符串 \(s\) 中的某个字符改成任意一个字符最多 \(k\) 次,这样做之后,问你最后形成的 \(s\) 中最多会有多少个 \(t\) 子序列。 题解 设 \(f[i][j][l]\) 表示前 \(i\) 个字符,修改了 \(j\) 次, 有 \(l\) 个 \(t[1]\) 字符, \(t\) 作为子序列最多出现的次数。 假设已经求得了前 \(i\) 个字符

    日期 2023-06-12 10:48:40     
  • 【Educational Codeforces Round 88 (Rated for Div. 2) C】 Mixing Water

    【Educational Codeforces Round 88 (Rated for Div. 2) C】 Mixing Water

    题目链接 【题目翻译】 有一个无限大的容器。 你轮流进行如下操作:倒一杯热水进去、倒一杯冷水进去。以此类推。 (热水温度是h,冷水温度是c) 容器中的水的温度等于倒进去的水的温度总和/倒水的次数。 问你需要进行多少次操作,水的温度才能最接近温度t。 【题解】 会发现,进行2,4,6,8,10...次操作,水的温度都是(h+c)/2. 并且因为是先倒热水,所以在水的温度的变化过程中,

    日期 2023-06-12 10:48:40     
  • 【Codeforces Round #589 (Div. 2) D】Complete Tripartite

    【Codeforces Round #589 (Div. 2) D】Complete Tripartite

    【链接】 我是链接,点我呀:) 【题意】 题意 【题解】 其实这道题感觉有点狗。 思路大概是这样 先让所有的点都在1集合中。 然后随便选一个点x,访问它的出度y 显然tag[y]=2 因为和他相连了嘛 然后其他没有和x相连的点显然只能和x在同一个集合中 所以其他1集合的点你会发现你想改也没法改,就算他们有可能连在一起也没用,因为你不可能再把其他的1改成2了,因为会和你之前选的A冲

    日期 2023-06-12 10:48:40     
  • 【Codeforces 1148B】Born This Way

    【Codeforces 1148B】Born This Way

    【链接】 我是链接,点我呀:) 【题意】 有人要从A地飞向B地,然后从B地飞向C地。 给出A,B地的n、m个航班的出发时间。 已知从A到B的航班都是ta和tb时长到达B、C 只有到达B的时候航班还没起飞才能乘坐(当然也可以等下一班) 问你现在你可以去掉最多K个航班,这个人到达C地最晚的时间是啥时候(那个人会在你删掉之后选择最好的方案)(或者直接输出这个人不能到达C) 【题解】 如

    日期 2023-06-12 10:48:40