ACM
又起风了
这个作者很懒,什么都没留下…
展开
-
寻找两个有序数组的中位数
力扣:https://leetcode-cn.com/problems/median-of-two-sorted-arrays/4. 寻找两个正序数组的中位数给定两个大小为 m 和 n 的正序(从小到大)数组 nums1 和 nums2。请你找出这两个正序数组的中位数,并且要求算法的时间复杂度为 O(log(m + n))。你可以假设 nums1 和 nums2 不会同时为空。示例 1:nums1 = [1, 3]nums2 = [2]则中位数是 2.0示例 2:nums1 = [1,原创 2020-05-29 21:56:19 · 113 阅读 · 0 评论 -
1033 To Fill or Not to Fill (25分)
1033To Fill or Not to Fill(25分)With highways available, driving a car from Hangzhou to any other city is easy. But since the tank capacity of a car is limited, we have to find gas stations on the ...原创 2020-02-16 18:43:04 · 180 阅读 · 0 评论 -
1131 Subway Map (30分)
In the big cities, the subway systems always look so complex to the visitors. To give you some sense, the following figure shows the map of Beijing subway. Now you are supposed to help people with you...原创 2020-02-12 13:41:19 · 210 阅读 · 0 评论 -
1076 Forwards on Weibo (30分)
1076Forwards on Weibo(30分)Weibo is known as the Chinese version of Twitter. One user on Weibo may have many followers, and may follow many other users as well. Hence a social network is formed wit...原创 2020-01-29 22:03:27 · 198 阅读 · 0 评论 -
1067 Sort with Swap(0, i) (25分)
1067Sort with Swap(0, i)(25分)Given any permutation of the numbers {0, 1, 2,...,N−1}, it is easy to sort them in increasing order. But what ifSwap(0, *)is the ONLY operation that is allowed to u...原创 2020-01-19 19:43:01 · 160 阅读 · 0 评论 -
1065 A+B and C (64bit) (20分)
Given three integersA,BandCin [−263,263], you are supposed to tell whetherA+B>C.Input Specification:The first line of the input gives the positive number of test cases,T(≤10). The...原创 2020-01-19 18:00:28 · 186 阅读 · 0 评论 -
最长不下降子序列
最长不下降子序列解法第一种就是普通的dp方法for(int i=1;i<=n;i++){ cin>>a[i]; // dp[i]=1; } // dp[0]=-1; for(int i=1;i<=n;i++){d[i] = 1; for(int j=1;j<i;j++){ ...原创 2020-01-15 08:54:37 · 139 阅读 · 0 评论 -
1032 Sharing (25分)
To store English words, one method is to use linked lists and store a word letter by letter. To save some space, we may let the words share the same sublist if they share the same suffix. For example,...原创 2020-01-12 13:56:21 · 176 阅读 · 0 评论 -
1016 Phone Bills (25分)
A long-distance telephone company charges its customers by the following rules:Making a long-distance call costs a certain amount per minute, depending on the time of day when the call is made. When...原创 2020-01-07 20:01:43 · 186 阅读 · 0 评论 -
1014 Waiting in Line (30分)
1014Waiting in Line(30分)Suppose a bank hasNwindows open for service. There is a yellow line in front of the windows which devides the waiting area into two parts. The rules for the customers to ...原创 2020-01-07 10:27:15 · 107 阅读 · 0 评论 -
Battle Over Cities(dfs)
1013Battle Over Cities(25分)It is vitally important to have all the cities connected by highways in a war. If a city is occupied by the enemy, all the highways from/toward that city are closed. We ...原创 2020-01-06 21:50:27 · 139 阅读 · 0 评论 -
vector学习
#include<iostream>#include<vector>#include<algorithm>#include<cstdio>#include<cstring>#include<cstdlib>#include<map>#include<stack>#include<...原创 2020-01-06 19:02:13 · 151 阅读 · 0 评论 -
广搜
题目 这有一个迷宫,有0~8行和0~8列: 1,1,1,1,1,1,1,1,1 1,0,0,1,0,0,1,0,1 1,0,0,1,1,0,0,0,1 1,0,1,0,1,1,0,1,1 1,0,0,0,0,1,0,0,1 1,1,0,1,0,1,0,0,1 1,1,0,1,0,1,0,0,1 1,1,0,1,0,0,0,0,1 1,1,1,1,1,1,1,1,10表示道路原创 2016-07-30 10:04:10 · 277 阅读 · 0 评论 -
flody算法
flody算法介绍 算法简洁,只有三层for循环,要重点理解这三层for循环。 可以在http://blog.csdn.net/zhongkeli/article/details/8832946博客中查看 。例题: 题目地址:http://acm.hust.edu.cn/vjudge/problem/78207 题目分析:从图中的任何一点,走到别的点的总和最小,输出该点和最小的距离总和。刚开原创 2016-08-01 18:04:00 · 1133 阅读 · 0 评论 -
最小生成树(prim和kruskal)
问题引入: 假设要在n个城市之间建立通信网络,则连通n个城市至少需要n-1条线路。n个城市之间,最多可能设置n*(n-1)/2条线路。这时,自然会考虑一个问题:如何在这些可能的线路中选择n-1条,使得在最节省费用的前提下建立该网络通信? 解决方法: 1.prim算法 算法思想: G=(V,E)是无向连通带权图,V=(1,2,3,…,n);设最小生成树T=(U,TE),算法原创 2016-10-18 21:31:26 · 573 阅读 · 0 评论 -
弗洛伊德(Floyd)算法
用弗洛伊德算法求解的是所有的顶点到所有的顶点的最短路径,时间复杂度为O(n^3),代码只有三个for循环,非常简洁。 Poj1125oj(http://poj.org/problem?id=1125),适合此算法,题意: 输入第一个N,代表经济人人数,之后N行分别为第1到N个经济人,传递网络信息到别的经济人的情况,意思分别为能传递M个经济人,传递给a,传递花费时间b,构建完成图之后输出花费时转载 2016-10-05 20:05:32 · 475 阅读 · 0 评论 -
TCL 之map容器的一点小结
一、关于map的介绍map是STL的一个容器,和set一样,map也是一种关联式容器。它提供一对一(其中第一个可以称为关键字,每个关键字只能在map中出现一次,第二个可能称为该关键字的值)的数据处理能力,由于这个特性,有助于我们处理一对一数据。这里说下map内部数据的组织,map内部是自建一颗红黑树(一种非严格意义上的平衡二叉树),这颗树具有对数据自动排序的功能,所以在map内部所有的数据都是有序转载 2016-10-05 21:21:04 · 816 阅读 · 0 评论 -
c++数组传参
一维数组,有两种传递方法,一种是function(int a[]); 另一种是function(int *a)。两种都是传入地址,因此在函数中对该数组做的操作,会改变原来的数组值。#include<iostream>#include<cstring>#include<cstdio>using namespace std;void addOne(i...原创 2018-10-01 21:10:21 · 9366 阅读 · 0 评论 -
离散化&线段树----队列游戏
题目如下所示: 当然,第一个想法是两个for,课后作业给的结果是有一个样例没通过(超时)。 #include<iostream>#include<cstring>#include<cstdio>#include<stack>#include<queue>using namespace st...原创 2018-10-12 09:09:46 · 188 阅读 · 0 评论 -
快速幂讲解
快速幂这个东西比较好理解,但实现起来到不老好办,记了几次老是忘,今天把它系统的总结一下防止忘记。 首先,快速幂的目的就是做到快速求幂,假设我们要求a^b,按照朴素算法就是把a连乘b次,这样一来时间复杂度是O(b)也即是O(n)级别,快速幂能做到O(logn),快了好多好多。它的原理如下: 假设我们要求a^b,那么其实b是可以拆成二进制的,该二进制数第i位的权为2^(i-1),例如当b=...转载 2018-09-22 11:44:36 · 153 阅读 · 0 评论 -
数列----快速幂
题目信息如图所示: 刚开始思考,以为难点是在大数相乘,写了一个字符串传参的大数函数(模拟简单的乘法),但是发现没法取模,以及循环次数太多了,k的值太大。请教了同学,得知使用矩阵快速幂来解题。矩阵快速幂就是利用a^b次幂,b写成2进制时,比如,m=2^11,对应的11的2进制位1011,那么从2^1,2^2,2^4,2^8每个数都是前面一个数的平方xi(前面的数自己乘自己),那么,从1...原创 2018-09-22 16:42:02 · 202 阅读 · 0 评论 -
C++ map的一些用法
map的一些用法#C++map的遍历##一般使用迭代器遍历比较方便。其中map的键是唯一的。map<string,int> m;map<string,int>::iterator it;it = m.begin();while(it != m.end()){ //it->first; //it->second; it...原创 2018-12-20 19:22:50 · 145 阅读 · 0 评论 -
吝啬的国度
描述 在一个吝啬的国度里有N个城市,这N个城市间只有N-1条路把这个N个城市连接起来。现在,Tom在第S号城市,他有张该国地图,他想知道如果自己要去参观第T号城市,必须经过的前一个城市是几号城市(假设你不走重复的路)。 输入 第一行输入一个整数M表示测试数据共有M(1<=M<=5)组 每组测试数据的第一行输入一个正整数N(1<=N<=100000)和一个正整数S(1<=S<=100000),原创 2016-07-25 13:36:41 · 280 阅读 · 0 评论