T1

https://www.codechef.com/MAY18B/problems/RD19

刚开始zz了,其实很简单。

删除一个数不会使gcd变小,于是就只有0/1两种情况

T2

https://www.codechef.com/MAY18B/problems/XORAGN

我们可以把B序列看做一个矩阵

那么$A(i,j)$和$A(j,i)$会抵消掉

因此答案就是$\sum_1^n A(i,i) + A(i,i)$

T3

https://www.codechef.com/MAY18B/problems/MTYFRI

答案的序列是固定的,因此后手会把自己最小的换做对手最大的,

贪心求解,两个堆维护最小最大值

T4

https://www.codechef.com/MAY18B/problems/DBFB

按照套路,考虑A,B对答案的贡献,A只可能作为第一项,B只可能作为第二项。

统计出斐波那契数列中A,B的出现次数

A,B会被枚举M次,因此答案最后乘M

T5

很有思维量的一道题

首先,对于每个数,它能够被枚举到的顺序是一定的

根据题目不难得出,它所在序列的各个值应该是单调递增的。

那么我们可以把序列求出来,对于这个点,从它左边比它大的个数和它右边比它小的元素个数里面取max

-1的情况需要特判

T6

很有思维量的一道题,前前后后做了3天才A掉

刚开始zbq想了一个三维dp,应该可以做已AC,但是太麻烦了好像也不是很麻烦

考虑每个数,当且仅当它左边右边都比它大时才能转移

这样我们用$f[i]$表示一定选$i$时的最优答案,转移的时候枚举前面的点

这样看似是$O(n^2)$的,但是很显然,答案序列的函数图像中大多数都是单调递增的

因此我们只要往前枚举一部分就好,亲测1000可过

目前rank

顺便Orz zbq

codechef MAY18 div2 部分题解的更多相关文章

  1. Codechef Not a Triangle题解

    找出一个数组中的三个数,三个数不能组成三角形. 三个数不能组成三角形的条件是:a + b < c 两边和小于第三边. 这个问题属于三个数的组合问题了.暴力法可解,可是时间效率就是O(n*n*n) ...

  2. 「CF#554 div2」题解

    A 水题一道. 题目的大致意思就是:给你两个集合,求集合间有多少数对和是奇数. 题解,开\(4\)个桶后,求一个\(min\)就可以了. #include <bits/stdc++.h> ...

  3. Codeforces Round div2 #541 题解

    codeforces Round #541 abstract: I构造题可能代码简单证明很难 II拓扑排序 III并查集 启发式排序,带链表 IV dp 处理字符串递推问题 V 数据结构巧用:于二叉树 ...

  4. CodeChef March Challenge 2019题解

    传送门 \(CHNUM\) 显然正数一组,负数一组 for(int T=read();T;--T){ n=read(),c=d=0; fp(i,1,n)x=read(),x>0?++c:++d; ...

  5. codeforces #236 div2 简洁题解

    A:A. Nuts time limit per test 1 second memory limit per test 256 megabytes input standard input outp ...

  6. codechef Jewels and Stones 题解

    Soma is a fashionable girl. She absolutely loves shiny stones that she can put on as jewellery acces ...

  7. CodeChef April Challenge 2019题解

    传送门 \(Maximum\ Remaining\) 对于两个数\(a,b\),如果\(a=b\)没贡献,所以不妨假设\(a<b\),有\(a\%b=a\),而\(b\%a<a\).综上, ...

  8. codeforces 576 div2 A-D题解

    A题 Description 题目链接: https://codeforces.com/contest/1199/problem/A 题意: 给定长度为n(1≤n≤100000)的一个序列a,以及两个 ...

  9. CCPC Wannafly Winter Camp Div2 部分题解

    Day 1, Div 2, Prob. B - 吃豆豆 题目大意 wls有一个\(n\)行\(m\)列的棋盘,对于第\(i\)行第\(j\)列的格子,每过\(T[i][j]\)秒会在上面出现一个糖果, ...

随机推荐

  1. stress工具使用指南和结果分析

    stress介绍 #stress `stress' imposes certain types of compute stress on your system Usage: stress [OPTI ...

  2. 1.Linux入门介绍

    1.1 Linux概述 1.1.1 Linux简要介绍 Linux的由来: Linux的内核最初是由芬兰人李纳斯·托瓦茨在上大学的时候编写的一个内核,它是基于Unix操作系统编写的 大多服务器使用的是 ...

  3. Ubuntu网卡设置:配置/etc/netplan

    对于Ubuntu1804版本,经过测试如下配置可以设置静态IP地址: Google@ubuntu:~$ cat /etc/netplan/01-netcfg.yaml network: etherne ...

  4. BZOJ 1617 Usaco 2008 Mar. River Crossing渡河问题

    [题解] 显然是个DP题. 设$f[i]$表示送$i$头牛过河所需的最短时间,预处理出$t[i]$表示一次性送i头牛过河所需时间,那么我们可以得到转移方程:$f[i]=min(f[i],f[i-j]+ ...

  5. 【Codeforces 340D】Bubble Sort Graph

    [链接] 我是链接,点我呀:) [题意] 让你根据冒泡排序的规则 建立一张图 问你这张图的最大独立子集的大小 [题解] 考虑a[i]会和哪些点连边? 必然是在a[i]左边且比它大的数字以及在a[i]右 ...

  6. [TS-A1487][2013中国国家集训队第二次作业]分配游戏[二分]

    根据题意,设$3n$次比较中胜了$w$次,负了$l$次,平了$d$次,所有场次中胜了$W$次,负了$L$次,平了$D$次.如果一场赢了,那么$w-l$就会$+1$,相同地,$W-L$也会$+1$:如果 ...

  7. Findbug插件静态java代码扫描工具使用

    本文转自http://blog.csdn.net/gaofuqi/article/details/22679609 感谢作者 FindBugs 是由马里兰大学提供的一款开源 Java静态代码分析工具. ...

  8. Oracle 11g OEM登录后提示“出现内部错误”

    使用oem登录时提示:“出现内部错误.有关详细信息, 请查看日志文件”. 具体原因未知,发现使用SQL Plus登录一次之后,再次登录即可.

  9. 逆波兰法求解数学表达示(C++)

    主要是栈的应用,里面有两个函数deleteSpace(),stringToDouble()在我还有一篇博客其中:对string的一些扩展函数. 本程序仅仅是主要的功能实现,没有差错控制. #inclu ...

  10. Oracle GoldenGate从oracle db 到非oracle db的初始化数据同步的方法

    非oracle db以 sqlserver为样例说明: 我的思路 A :oracle db 生产  B: oracle db 中间机 C: sqlserver db 目的端 A-> B-> ...