International Collegiate Programming Contest, Egyptian Collegiate Programming Contest (ECPC 2018)

2024-02-21 07:38

本文主要是介绍International Collegiate Programming Contest, Egyptian Collegiate Programming Contest (ECPC 2018),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

International Collegiate Programming Contest, Egyptian Collegiate Programming Contest (ECPC 2018)

D. The Millennium Prize Problems

求有公约数x的所有数对之积,那么最大公约数为x的乘积只需要约数有x减掉最大公约数为2x,3x的数对之积。

E. Count Permutations

d p [ i ] [ j ] [ k ] dp[i][j][k] dp[i][j][k]记前i个已经有连续上升长度为j最后一个在后面的数里是第k小。

G. Robots race

LCT维护一个满足条件的最小生成树,加入新边时与树上链比较,判断是否可以替换,如果可以替换,cut&link。
貌似有更容易的方法。
注意到不同权值的边相互之间是独立的,只要判断相同权值的边能否同时在最小生成树上存在即可。维护权值小于 x x x的边加入进来之后图的联通状态(可持久化并查集)。

J. The test cases

倒着看,每次可以把 x x x变成 x 2 \frac{x}{2} 2x或者 x 2 + N 2 \frac{x}{2}+\frac{N}{2} 2x+2N,要从 0 0 0开始
遍历 [ 0 , n − 1 ] [0,n-1] [0,n1],最后在1结束。那么不妨把 x x x换成 n − x n-x nx x x x可以变成 ⌈ x 2 ⌉ \lceil \frac{x}{2}\rceil 2x ⌈ x 2 ⌉ + N 2 \lceil \frac{x}{2} \rceil + \frac{N}{2} 2x+2N 。x从0开始遍历,在 n − 1 n-1 n1结束。那么就可以贪心了。
每次让x尽量小即可。

L. Reflection

线段树

M. The business man

线段树

这篇关于International Collegiate Programming Contest, Egyptian Collegiate Programming Contest (ECPC 2018)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/731029

相关文章

BUUCTF靶场[web][极客大挑战 2019]Http、[HCTF 2018]admin

目录   [web][极客大挑战 2019]Http 考点:Referer协议、UA协议、X-Forwarded-For协议 [web][HCTF 2018]admin 考点:弱密码字典爆破 四种方法:   [web][极客大挑战 2019]Http 考点:Referer协议、UA协议、X-Forwarded-For协议 访问环境 老规矩,我们先查看源代码

2014 Multi-University Training Contest 8小记

1002 计算几何 最大的速度才可能拥有无限的面积。 最大的速度的点 求凸包, 凸包上的点( 注意不是端点 ) 才拥有无限的面积 注意 :  凸包上如果有重点则不满足。 另外最大的速度为0也不行的。 int cmp(double x){if(fabs(x) < 1e-8) return 0 ;if(x > 0) return 1 ;return -1 ;}struct poin

2014 Multi-University Training Contest 7小记

1003   数学 , 先暴力再解方程。 在b进制下是个2 , 3 位数的 大概是10000进制以上 。这部分解方程 2-10000 直接暴力 typedef long long LL ;LL n ;int ok(int b){LL m = n ;int c ;while(m){c = m % b ;if(c == 3 || c == 4 || c == 5 ||

2014 Multi-University Training Contest 6小记

1003  贪心 对于111...10....000 这样的序列,  a 为1的个数,b为0的个数,易得当 x= a / (a + b) 时 f最小。 讲串分成若干段  1..10..0   ,  1..10..0 ,  要满足x非递减 。  对于 xi > xi+1  这样的合并 即可。 const int maxn = 100008 ;struct Node{int

AtCoder Beginner Contest 370 Solution

A void solve() {int a, b;qr(a, b);if(a + b != 1) cout << "Invalid\n";else Yes(a);} B 模拟 void solve() {qr(n);int x = 1;FOR(i, n) FOR(j, i) qr(a[i][j]);FOR(i, n) x = x >= i ? a[x][i]: a[i][x];pr2(

2018秋招C/C++面试题总结

博主从8月中旬开始大大小小面试了十几家公司,至今也许是告一段落吧,希望后面会有好结果,因此总结记录一些C/C++方向常见的问题。和大家一起学习! 参考了互联网的各种资源,自己尝试归类整理,谢谢~ 一、C和C++的区别是什么? C是面向过程的语言,C++是在C语言的基础上开发的一种面向对象编程语言,应用广泛。 C中函数不能进行重载,C++函数可以重载 C++在C的基础上增添类,C是一个结构

大厂算法例题解之网易2018秋招笔试真题 (未完)

1、字符串碎片 【题目描述】一个由小写字母组成的字符串可以看成一些同一字母的最大碎片组成的。例如,“aaabbaaac” 是由下面碎片组成的:‘aaa’,‘bb’,‘c’。牛牛现在给定一个字符串,请你帮助计算这个字符串的所有碎片的 平均长度是多少。 输入描述: 输入包括一个字符串 s,字符串 s 的长度 length(1 ≤ length ≤ 50),s 只含小写字母(‘a’-‘z’) 输出描述

CF Bayan 2015 Contest Warm Up B.(dfs+暴力)

B. Strongly Connected City time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standard output 题目链接: http://codeforces.com/contest/475/probl

CF Bayan 2015 Contest Warm Up A.(模拟+预处理)

A. Bayan Bus time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standard output 题目链接: http://codeforces.com/contest/475/problem/A The fi

vulhub GhostScript 沙箱绕过(CVE-2018-16509)

1.执行以下命令启动靶场环境并在浏览器访问 cd vulhub/ghostscript/CVE-2018-16509 #进入漏洞环境所在目录   docker-compose up -d #启动靶场   docker ps #查看容器信息 2.访问网页 3.下载包含payload的png文件 vulhub/ghostscript/CVE-2018-16509/poc.png at