SRM 638 Div2_html/css_WEB-ITnose
2333. .
Due to the small number of TC entries and the constant fst, I dropped it to div2.
Fortunately, I returned to div1 when I was done. .
250
Water question
500
Water question. .
Just expand bfs directly
Pay attention to the judgment, I also used Cantor to expand it, which is really unnecessary. .
1000
I misunderstood the meaning of this question. . I said it looked wrong when looking at other people’s code
But it’s still a very easy question
Binary enumeration of which leaf nodes to burn
Then for each burning method
Find the shortest path
After finding the shortest path, enumerate the edges
Assume that the two nodes of the edge are u, and the weight of v is w
Just find the maximum (dis[u] dis[v] w )/2 which is the time to burn out
Why is this?
Assume a certain side It is the last one to be burned. There are two situations
One is that u and v are both burned by fire from other nodes
One is that u is passed by v Burned by fire
For the first type, let’s assume dis[u] > dis[v]
The answer is ( L-(dis[u] - dis[v]) ) / 2 dis[u] = (dis[u] dis[v] L) / 2
Second type
dis[v] L = dis[u]
Then the same dis[u] = (dis[v] L dis[u]) / 2
Both can be expressed by this
Then for convenience we will not divide by 2
struct node { int v, w; node () {} node (int _v, int _w) {v = _v; w = _w;}};vector<node>g[22];int ind[22], lea[22], pos[22], d[22], vis[22], q[1111];set<int> s;class CandleTimerEasy{public: int differentTime(vector <int> A, vector <int> B, vector <int> len) { int n = A.size() + 1; for(int i = 0; i < n; i++) g[i].clear(); memset(ind, 0, sizeof(ind)); for(int i = 0; i < n - 1; i++) { g[A[i]].push_back(node(B[i], len[i])); g[B[i]].push_back(node(A[i], len[i])); ++ind[A[i]]; ++ind[B[i]]; } s.clear(); int cnt = 0; memset(pos, -1, sizeof(pos)); for(int i = 0; i < n; i++) { if(ind[i] == 1) { lea[cnt] = i; pos[i] = cnt; cnt++; } } for(int sta = 1; sta < (1 << cnt); sta ++) { int h = 0, t = 0; for(int i = 0; i < n; i++) { d[i] = INF; vis[i] = 0; if(pos[i] != -1) { if(sta & (1 << pos[i])) { q[t++] = i; d[i] = 0; vis[i] = 1; } } } while(h < t) { int u = q[h++]; vis[u] = 0; for(int i = 0; i < g[u].size(); i++) { int v = g[u][i].v; int w = g[u][i].w; if(d[u] + w < d[v]) { d[v] = d[u] + w; if(!vis[v]) { q[t++] = v; vis[v] = 1; } } } } int mx = 0; for(int i = 0; i < n - 1; i++) mx = max(mx, d[A[i]] + d[B[i]] + len[i]); s.insert(mx); } return (int)s.size(); }}

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

HTML is suitable for beginners because it is simple and easy to learn and can quickly see results. 1) The learning curve of HTML is smooth and easy to get started. 2) Just master the basic tags to start creating web pages. 3) High flexibility and can be used in combination with CSS and JavaScript. 4) Rich learning resources and modern tools support the learning process.

HTML defines the web structure, CSS is responsible for style and layout, and JavaScript gives dynamic interaction. The three perform their duties in web development and jointly build a colorful website.

WebdevelopmentreliesonHTML,CSS,andJavaScript:1)HTMLstructurescontent,2)CSSstylesit,and3)JavaScriptaddsinteractivity,formingthebasisofmodernwebexperiences.

AnexampleofastartingtaginHTMLis,whichbeginsaparagraph.StartingtagsareessentialinHTMLastheyinitiateelements,definetheirtypes,andarecrucialforstructuringwebpagesandconstructingtheDOM.

GiteePages static website deployment failed: 404 error troubleshooting and resolution when using Gitee...

To achieve the effect of scattering and enlarging the surrounding images after clicking on the image, many web designs need to achieve an interactive effect: click on a certain image to make the surrounding...

The Y-axis position adaptive algorithm for web annotation function This article will explore how to implement annotation functions similar to Word documents, especially how to deal with the interval between annotations...

HTML, CSS and JavaScript are the three pillars of web development. 1. HTML defines the web page structure and uses tags such as, etc. 2. CSS controls the web page style, using selectors and attributes such as color, font-size, etc. 3. JavaScript realizes dynamic effects and interaction, through event monitoring and DOM operations.
