Codeforces Round #434 (Div. 2)

刚好时间对得上,就去打了一场cf,发现自己的代码正确度有待提高。

A. k-rounding

题目描述:给定两个整数\(n, k\),求一个最小整数\(x\)使得,\(x\)既是\(n\)的倍数,也是\(10^k\)的倍数。

solution
首先判断\(n\)是不是\(10^k\)的倍数,如果是就可以直接输出了。
如果不是,就算出\(n\)有质因子\(2\)多少个,质因子\(5\)多少个,如果\(2\)比较少,那就乘\(2\),否则乘\(5\),直到它们的个数相等(或者\(n\)已经是\(10^k\)的倍数),如果\(n\)依然不是\(10^k\)的倍数,那么就乘\(10\),直到是\(10^k\)的倍数为止。
时间复杂度:\(O(k)\)

B. Which floor?

题目描述:有一栋楼,每层有相同数量的房间,房间从一楼开始从1开始编号。给出\(m\)条信息(一条信息为第几个房间在第几层),问能否确定第\(n\)个房间在哪一层。

solution
\(n\)比较小,所以可以枚举一层有多少个房间,然后检查一下是否满足那\(m\)个信息,如果满足,则出现一个答案,最后判断是否有多个答案即可。
时间复杂度:\(O(nm)\)

C. Did you mean...

题目描述:给出一个只由小写字母组成的字符串\(st\),如果\(st\)的一个子串满足:
1、子串长度大于等于3
2、子串的所有字符都是辅音字母
3、子串至少有两种不同的字母
那么这个子串就叫作typo
现在要在\(st\)中插入最少的空格使得分开的每一段都没有typo

solution
找出从左到右第一个typo,假设该子串为\(st(i, j)\),那么就在\(j\)前面插入一个空格,然后从\(j\)开始继续找第一个typo,重复上述步骤直到结束
时间复杂度:\(O(length(st))\)

D. Polycarp's phone book

题目描述:给出\(n\)个九位数,给每一个九位数找一个最短的特征子串,使得该子串不是其它九位数的子串。

solution
求出出每个九位数的每个子串在多少个九位数中出现,若只出现了一次,那么这个子串就是特征子串
时间复杂度:\(O(81n)\)

E. Tests Renumeration

还没想到。。。

F. Wizard's Tour

题目描述:给出一个没有自环和重边的图,找出尽量多的\((x, y, z)\)三元对,满足\(x, y\)有边相连,\(y, z\)有边相连,而且每条边只能属于一个三元对,输出最多的数量以及方案。

solution
这题是构造解。
先随便找一个点做根,然后构成一棵树(当然是有环的),算出每个点的深度,然后从深度大的开始枚举,假设当前点为\(i\),然后找出\(i\)所连向的点(\(j\))并且\(j\)的深度大于等于\(i\)的深度,而且\(i, j\)之间的边没有被选过,然后将这些点两两配对,如果还剩下一个而且\(i\)不是根,那么\(i\)的父亲,\(i\),以及剩下的这个点可以组成一个三元对。
时间复杂度:\(O(n)\)

Codeforces Round #434 (Div. 2)的更多相关文章

  1. Codeforces Round #434 (Div. 2)【A、B、C、D】

    Codeforces Round #434 (Div. 2) codeforces 858A. k-rounding[水] 题意:已知n和k,求n的最小倍数x,要求x后缀至少有k个0. 题解:答案就是 ...

  2. Codeforces Round #434 (Div. 2, based on Technocup 2018 Elimination Round 1)&&Codeforces 861C Did you mean...【字符串枚举,暴力】

    C. Did you mean... time limit per test:1 second memory limit per test:256 megabytes input:standard i ...

  3. Codeforces Round #434 (Div. 2, based on Technocup 2018 Elimination Round 1)&&Codeforces 861B Which floor?【枚举,暴力】

    B. Which floor? time limit per test:1 second memory limit per test:256 megabytes input:standard inpu ...

  4. Codeforces Round #434 (Div. 2, based on Technocup 2018 Elimination Round 1)&&Codeforces 861A k-rounding【暴力】

    A. k-rounding time limit per test:1 second memory limit per test:256 megabytes input:standard input ...

  5. Codeforces Round #434 (Div. 2, based on Technocup 2018 Elimination Round 1)

    A. k-rounding 题目意思:给两个数n和m,现在让你输出一个数ans,ans是n倍数且末尾要有m个0; 题目思路:我们知道一个数末尾0的个数和其质因数中2的数量和5的数量的最小值有关系,所以 ...

  6. 【模拟】 Codeforces Round #434 (Div. 1, based on Technocup 2018 Elimination Round 1) C. Tests Renumeration

    题意:有一堆数据,某些是样例数据(假设X个),某些是大数据(假设Y个),但这些数据文件的命名非常混乱.要你给它们一个一个地重命名,保证任意时刻没有重名文件的前提之下,使得样例数据命名为1~X,大数据命 ...

  7. 【Codeforces Round #434 (Div. 2) B】Which floor?

    [链接]h在这里写链接 [题意] 在这里写题意 [题解] 枚举每层有多少个公寓就好. 要注意,每次都要从1到100判断,一下那个公寓该不该出现在那一层. 多个答案,如果答案是一样的.也算是唯一的.  ...

  8. 【Codeforces Round #434 (Div. 1) B】Polycarp's phone book

    [链接]h在这里写链接 [题意] 给你n个电话号码. 让你给每一个电话号码选定一个字符串s; 使得这个串s是这个电话号码的子串. 且不是任何一个其他电话号码的子串. s要求最短. [题解] 字典树. ...

  9. 【Codeforces Round #434 (Div. 2) A】k-rounding

    [链接]h在这里写链接 [题意] 在这里写题意 [题解] 转换一下就是求n和10^k的最小公倍数. [错的次数] 0 [反思] 在这了写反思 [代码] #include <bits/stdc++ ...

随机推荐

  1. Using the command line to manage files on HDFS--转载

    原文地址:http://zh.hortonworks.com/hadoop-tutorial/using-commandline-manage-files-hdfs/ In this tutorial ...

  2. Java Machine Learning Tools & Libraries--转载

    原文地址:http://www.demnag.com/b/java-machine-learning-tools-libraries-cm570/?ref=dzone This is a list o ...

  3. 【bzoj5183】[Baltic2016]Park 离线+对偶图+并查集

    题目描述 在Byteland的首都,有一个矩形围栏围起来的公园.在这个公园里树和访客都以一个圆形表示.公园有四个出入口,每个角落一个(1=左下角,2=右下角,3=右上角,4=左上角).访客能通过这些出 ...

  4. CRM 建设方案(01):CRM基础

    CRM 客户关系管理系统基础 客户关系管理简称CRM(Customer Relationship Management).CRM概念引入中国已有数年,其字面意思是客户关系管理,但其深层的内涵却有着许多 ...

  5. win7右键新建文件夹不见了

    http://zhidao.baidu.com/question/175786636169796084.html 看下注册表文件:reg add "HKEY_CLASSES_ROOT\Dir ...

  6. Hdu5226 Tom and matrix

    Tom and matrix Time Limit: 3000/1500 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)To ...

  7. shared_ptr & unique_ptr & weak_ptr (C++11)

    c++11标准废除乐auto_ptr, C++ 标准库智能指针 使用这些智能指针作为将指针封装为纯旧 C++ 对象 (POCO) 的首选项. unique_ptr 只允许基础指针的一个所有者. 除非你 ...

  8. 「Python」python与微信

    pip3 install itchat 主要用到的方法: itchat.login() 微信扫描二维码登录 itchat.get_friends() 返回完整的好友列表,每个好友为一个字典, 其中第一 ...

  9. myeclipse注册码,可以用到2016年

    myeclipse注册码,可以用到2016年 xiangyang kLR8ZF-655954-61677756068297221

  10. OpenCV---膨胀与腐蚀

    膨胀 腐蚀 一:膨胀实现dilate import cv2 as cv import numpy as np def dilate_demo(image): #膨胀 print(image.shape ...