HDU_1533
The shortest distance between people and houses is the distance between Manhattan. After creating the image, apply the KM algorithm to obtain the optimal matching of the Bipartite Graph.
#include#include#include#define MAXD 110#define MAX 10010#define INF 1000000000int N, hx[MAXD], hy[MAXD], px[MAXD], py[MAXD];int a[MAXD][MAXD], G[MAXD][MAXD], yM[MAXD];int A[MAXD], B[MAXD], slack, visx[MAXD], visy[MAXD];char b[MAXD];int init(){int i, j, k, n
HDU_2853
We can think that if we start matching from scratch and if the final part of matching changes but does not affect the final result, we do not need to change it into a new matching method. Therefore, we consider adding a "preference" to the original edge to ensure that it matches the original edge first without affecting the result.
When processing data, we can expand each edge to a certain value (multiply by 10 in my program), and then add the original edge weight to 1, in this way, w
HDU_3772
We can split a string into two vertices to represent the inbound and outbound degrees, and then use the KM algorithm to perform Optimal Matching for the bipartite graph.
#include#include#define MAXD 210#define INF 1000000000char b[MAXD][1010];int G[MAXD][MAXD] , yM[MAXD], N;int A[MAXD], B[MAXD], slack;int visx[MAXD], visy[MAXD];int check(char *str1, char *str2){int i, j, num = 0; i =strlen(str1) - 1;for(j = 0; str1[i] == str2[j] i >= 0
Uva_000046
This topic can be done with the minimum cost and the maximum flow. In order to review the optimal matching of the bipartite graph, we wrote a KM program.
At first, because I had not processed the double KM before, I was going to multiply the decimal number by a certain power of 10 into an integer, but I found that WA was always there, and then I simply wrote it using double, and then the AC.
#include#include#include#define MAXD 30#define INF 1000000000int N, M, xM[MAXD], yM[MAXD] ,vis
of their income. (Villagers who have the money to buy a house but not necessarily can buy it depends on what the village leader assigns).Input data contains multiple sets of test cases, the first row of each set of data input n, indicating the number of houses (also the number of people home), followed by n rows, the number of n per row represents the price of the room of the second village name (nOutput make the maximum revenue value for each set of data, one row for each set of outputs.Sample
A tough question
First, the input is very painful. According to the online experts, the question matrix is reversed. Then I gave it back.
If it is a match between n and n, there is no pressure to directly obtain the negative value of KM.
However, if the points on both sides are different, it is said that there will be problems.
[Cpp]# Include # Include # Include # Include # Include # Include # Define maxn505# Define MAXM 555555# Define INF 1000000000Using namespace std;Int n, m, ny, nx;Int w [
why calculate Setup time of the Slack need to consider adding cycles, Hold Time when you don't need it? Summary one:Because the data delay,launch edge and capture edge do not correspond to the same clock edge of the clock signal source clocks, due to the existence of the time of Setup, the addition cycle needs to be considered. When a single clock cycle is checked, the tool defaults to capture Edge-launch edge=1 cycles.Hold time because the two corre
easily solved. (It seems that a template like this, basic all similar problems can be resolved)1#include 2#include 3#include 4#include 5#include 6 using namespacestd;7 #defineMAXN 1008 #defineINF 1000000009 Ten intCases,n; One intA[MAXN][MAXN],B[MAXN][MAXN],VAL[MAXN][MAXN],SLACK[MAXN],VALX[MAXN],VALY[MAXN],LINKY[MAXN]; A BOOLVISX[MAXN],VISY[MAXN]; - - structpoint{ the intx, y; - }ans; - -Pointoperator-(point A,point b) {return(point) {a.x-b.
HDU_3488
It is worth mentioning that if we use the KM algorithm to find the perfect matching of minimum weights, we need to initialize the edge weight to the MAX-G [I] [j] and then find the perfect matching of the maximum right, and then convert the result back.
If you initialize G [I] [j] to-G [I] [j] to find the perfect matching of the maximum permission, the program I write Will time out, at the moment, I have no idea whether this idea is a problem or my writing is a problem.
#include#inclu
HDU_3718
First, we need to convert the characters in the string into the number of [0, k-1] with the same meaning, and then scan the array sequentially, we can get the maximum value of various matching between the two sets of numbers, this completes the graph creation.
Then use the KM algorithm to find the optimal match.
#include#include#define MAXD 30#define MAXN 10010#define INF 1000000000char a[MAXN][5], b[MAXN][5];int visa[MAXN], visb[MAXN], x[MAXN], y[MAXN];int G[MAXD][MAXD], yM[MAXD], N,
HDU_3395
We can split a fish into two points, which respectively represent attack and attack, and then set the Edge Weight of G [I] [j] = 1 to value [I].^ Value [j], and then use the KM algorithm to find the optimal matching of the Bipartite Graph.
#include#include#define MAXD 110#define INF 1000000000int yM[MAXD], G[MAXD][MAXD], N, value[MAXD];int A[MAXD], B[MAXD];int visx[MAXD], visy[MAXD], slack;char b[MAXD];int init(){int i, j; scanf("%d", N);
tree, The Edge (I,J) may be added to the equal sub-graphIn order for the A[i]+b[j]>=w (I,J) to always be true, and at least one edge is added to the equal sub-graph, d=min{a[i]+b[j]-w (i,j)},i in the interlaced tree, J is not in the interlaced treetime complexity: need to find an O (n) time augmentation path. Each augmentation requires an O (n) sub-index change. Each time you change the top, enumerate the edges to find the D value, the complexity is O (N2), and the total complexity is O (N4). S
distance s. When 1 times slack is made on each side, the branches that start from S and have a maximum level of 1 are generated. That is, the shortest path to the vertices with a maximum of 1 edges associated with S is found, and the 2nd-pass relaxation of each edge creates a 2nd-level branch, which means that the shortest path of those vertices connected by 2 edges is found .... Because the shortest path contains up to |v|-1 edges only, you only nee
Phenomenon:---------------------------------[ERROR] Failure executing Javac, but could not parse the error:Javac:invalid Target release:1.8Usage:javac Use-help for a list of possible option---------------------------------The survey found that:[Email protected] ~]# java-versionOPENJDK Version "1.8.0_65"OpenJDK Runtime Environment (build 1.8.0_65-b17)OpenJDK 64-bit Server VM (build 25.65-b01, Mixed mode)[Email protected] ~]# javac-versionJavac 1.7.0_111that is, Java is inconsistent with the Javac
First, install the Java SE JKDA, download Http://www.oracle.com/technetwork/java/javase/downloads/index.html?ssSourceSiteId=ocomen Select the latest version, the current latest version 1.8.0. Download jdk-8u45-linux-x64.tar.gz.B, unzip the download package, add environment variables.$ sudo vim ~/.BASHRCAdd at the end of the documentExport Java_home=/home/jeremy/jdk1.8.0export jre_home=${java_home}/jre export classpath=.:${java_home}/lib:${ Jre_home}/lib export Path=${java_home}/bin: $PATH It
-cookie "" http://download.oracle.com/otn-pub/java/jdk/8u111-b14/ jdk-8u111-linux-i586.tar.gz "# tar Xzf jdk-8u111-linux-i586.tar.gzNote: If Above wget command does not work for your watch this example video to download Java source archive using terminal.Install Java with alternativesAfter extracting archive file with Alternatives command to install it. Alternatives command is available in the chkconfig pac
Compile the Android 4.4.2 source code
In the previous article, I shared with you the process of downloading the android 4.4.2 source code in the sky (see the whole process of downloading the android4.4.2 source code (with the downloaded source code). Now I will write down the compilation notes.
Installing the JDK
The master branch of Android in the Android Open Source Project (AOSP) requires Java 7. On Ubuntu, use OpenJDK.
Java 7: For the latest version of Android
$ sudo apt-get update$ sudo
The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion;
products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the
content of the page makes you feel confusing, please write us an email, we will handle the problem
within 5 days after receiving your email.
If you find any instances of plagiarism from the community, please send an email to:
info-contact@alibabacloud.com
and provide relevant evidence. A staff member will contact you within 5 working days.