UVA题解二

UVA 110

题目描述:输出一个Pascal程序,该程序能读入不多于\(8\)个数,并输出从小到大排好序后的数。注意:该程序只能用读入语句,输出语句,if语句。

solution
模仿某一种排序算法(例如插入排序),递归输出答案。
时间复杂度:\(O(n!)\)

UVA 111

题目描述:求两个数组的最长公共子串。

solution
DP
时间复杂度:\(O(n^2)\)

UVA 112

题目描述:给出一棵树,判断是否存在一条从根到叶子节点的路径,路径上所有节点的权值和等于给定的数。

solution
递归。
时间复杂度:\(O(n)\)

UVA 113

题目描述:求一个数的\(n\)次方根。

solution
二分答案+高精度乘法
时间复杂度:\(O(nlogn)\)

UVA 116

题目描述:给出一个\(n*m\)的网格图,每个格子有一个数,现在从第一列的某个格子走到最后一列的某个格子,每次移动只能移动到右边一列的有公共点的三个格子(第一行与最后一行看作相邻),问经过的格子的数的和的最小值以及方案。

solution
记忆化搜索,注意状态转移的顺序。
时间复杂度:\(O(nm)\)

UVA 118

题目描述:在平面上划定一个边与坐标轴平行的矩形区域,有机器人会在里面轮流移动(一个机器人的命令全部结束再到另一个机器人),给定机器人的初始坐标(在矩形内),初始方向,以及命令(左转,右转,往前走一个单位),如果机器人走出了矩形,那它就永远消失,并在它走出矩形的那个点做上标记,以后的机器人来到了同一个地方时,如果命令会使它走出矩形,则无视该命令。输出所有机器人在矩形内的最终位置。(机器人完成它的所有命令后也会消失)

solution
模拟
时间复杂度:\(O(nm)\)

UVA 119

题目描述:给出一棵树,问这棵树是否完整。

solution
搜索
时间复杂度:\(O(n)\)

UVA 120

题目描述:给出一个栈,将这个栈里的元素从小到大排序(小的在栈顶),每次操作只能选择一个位置,然后将该位置到栈顶的元素翻转(位置翻转),输出一种可行的方案。

solution
构造。如果最大的不在栈底,则先将它翻转到栈顶,然后翻转到栈底,反复这样操作,直到排好序。
时间复杂度:\(O(n^2)\)

UVA 122

题目描述:给出一棵树,从上到下输出每一层的数(从左到右)

solution
BFS
时间复杂度:\(O(n)\)

UVA 123

题目描述:给出一些单词(忽略单词),然后给出一些句子,除忽略单词外,句子中的其它单词都可以看作关键词,按句子关键词的个数(\(m\))(同一个关键词出现多次算多个)将该句子复制\(m\)次,每个关键词对应一个句子(该句子中关键词大写,其它小写),然后按照关键词的字典序将所有句子排序(关键词相同则先输入的句子排前面,所在句子也相同则先在句子中出现的排前面),按序输出所有句子。

solution
multimap+set
时间复杂度:\(O(nmlog(nm))\)

UVA题解二的更多相关文章

  1. UVA题解三

    UVA题解三 UVA 127 题目描述:\(52\)张扑克牌排成一列,如果一张牌的花色或者数字与左边第一列的最上面的牌相同,则将这张牌移到左边第一列的最上面,如果一张牌的花色或者数字与左边第三列的最上 ...

  2. URAL题解二

    URAL题解二 URAL 1082 题目描述:输出程序的输入数据,使得程序输出"Beutiful Vasilisa" solution 一开始只看程序的核心部分,发现是求快排的比较 ...

  3. Problem W UVA 662 二十三 Fast Food

    Fast Food Time Limit:3000MS     Memory Limit:0KB     64bit IO Format:%lld & %llu Submit Status P ...

  4. UVA 607 二十二 Scheduling Lectures

    Scheduling Lectures Time Limit:3000MS     Memory Limit:0KB     64bit IO Format:%lld & %llu Submi ...

  5. UVA 442 二十 Matrix Chain Multiplication

    Matrix Chain Multiplication Time Limit:3000MS     Memory Limit:0KB     64bit IO Format:%lld & %l ...

  6. UVA 590 二十一 Always on the run

     Always on the run Time Limit:3000MS     Memory Limit:0KB     64bit IO Format:%lld & %llu Submit ...

  7. UVA 1424 二 Salesmen

    Salesmen Time Limit:3000MS     Memory Limit:0KB     64bit IO Format:%lld & %llu Submit Status Pr ...

  8. UVA题解一

    UVA 100 题目描述:经典3n+1问题在\(n \leq 10^6\)已经证明是可行的,现在记\(f[n]\)为从\(n\)开始需要多少步才能到\(1\),给出\(L, R\),问\(f[L], ...

  9. 【题解二连发】Construct Binary Tree from Inorder and Postorder Traversal & Construct Binary Tree from Preorder and Inorder Traversal

    LeetCode 原题链接 Construct Binary Tree from Inorder and Postorder Traversal - LeetCode Construct Binary ...

随机推荐

  1. Contest 8

    A:做法应该很多,比较好想的是每个点都往上倍增找到其能更新到的点. #include<iostream> #include<cstdio> #include<cstdli ...

  2. BZOJ3884 上帝与集合的正确用法(欧拉函数)

    设f(n)为模n时的答案,由2k mod n=2k mod φ(n)+φ(n) mod n(并不会证),且k mod φ(n)=f(φ(n)),直接就可以得到一个递推式子.记搜一发即可. #inclu ...

  3. [CF1111C]Creative Snap

    题目大意:有一个长度为$2^n(n\leqslant30)$的格子,有$k(k\leqslant10^5)$个球,分布在这些格子中,有两种消灭格子的方法: 1. 若一段格子长度大于等于$2$,可以对半 ...

  4. 《Linux内核设计与实现》第1、2章读书笔记

    第一章 1.Unix内核特点 十分简洁:仅提供几百个系统调用并且有明确的目的: 在Unix中,大部分东西都被(或者正致力于)被当做文件对待: Unix内核即相关系统工具软件都是用C语言编写的,这使得系 ...

  5. 【loj2064】找相同字符

    Portal --> loj2064 Solution 这里是用后缀数组做的版本!(晚点再用Sam写一遍qwq) ​ 首先一个字符串的子串其实就是这个字符串某个后缀的前缀,所以我们有一个十分简单 ...

  6. Android NDK 编译选项设置[zhuan]

    http://crash.163.com/#news/!newsId=24 在Android NDK开发中,有两个重要的文件:Android.mk和Application.mk,各尽其责,指导编译器如 ...

  7. jquery、css3动态显示百分比圆

    动态显示百分圆 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <m ...

  8. PID控制算法的C语言实现十 专家PID与模糊PID的C语言实现

    本节是PID控制算法的C语言实现系列的最后一节,前面8节中,已经分别从PID的实现到深入的过程进行了一个简要的讲解,从前面的讲解中不难看出,PID的控制思想非常简单,其主要问题点和难点在于比例.积分. ...

  9. 简单的并发服务器(多个线程各自accept)

    基于之前讲述的简单循环服务器,做一个多个线程各自accept的服务器demo 由于多个线程各自accept,容易造成数据错误,需要在accept前后枷锁 先看下客户端 客户端创建socket,初始化服 ...

  10. PhpStorm 快速查找文件 `Ctrl`+`Shift`+`N`

    PhpStorm 快速查找文件 `Ctrl`+`Shift`+`N`