File tree Expand file tree Collapse file tree 3 files changed +49
-2
lines changed
divide-nodes-into-the-maximum-number-of-groups
minimum-score-of-a-path-between-two-cities Expand file tree Collapse file tree 3 files changed +49
-2
lines changed Original file line number Diff line number Diff line change @@ -45,6 +45,8 @@ Step 2. Add the dependency
45
45
46
46
<summary >展开查看</summary >
47
47
48
+ https://leetcode.cn/problems/divide-nodes-into-the-maximum-number-of-groups
49
+
48
50
https://leetcode.cn/problems/closest-dessert-cost
49
51
50
52
https://leetcode.cn/problems/circular-sentence
Original file line number Diff line number Diff line change
1
+ function magnificentSets ( n : number , edges : number [ ] [ ] ) : number {
2
+ const e : number [ ] [ ] = Array ( n + 1 )
3
+ . fill ( 0 )
4
+ . map ( ( ) => [ ] as number [ ] ) ;
5
+
6
+ for ( const [ a , b ] of edges ) {
7
+ e [ a ] . push ( b ) ;
8
+ e [ b ] . push ( a ) ;
9
+ }
10
+ const mp = new Map < number , number > ( ) ;
11
+
12
+ for ( let i = 1 ; i <= n ; i ++ ) {
13
+ const q = [ i ] ;
14
+ const dis = Array < number > ( n + 1 ) . fill ( 0 ) ;
15
+ dis [ i ] = 1 ;
16
+ let mn = n ;
17
+ let mx = 1 ;
18
+
19
+ while ( q . length ) {
20
+ const x = q [ 0 ] ;
21
+ q . shift ( ) ;
22
+
23
+ mn = Math . min ( x , mn ) ;
24
+
25
+ for ( const d of e [ x ] ) {
26
+ if ( dis [ d ] == 0 ) {
27
+ dis [ d ] = dis [ x ] + 1 ;
28
+ mx = Math . max ( mx , dis [ d ] ) ;
29
+ q . push ( d ) ;
30
+ }
31
+ if ( Math . abs ( dis [ d ] - dis [ x ] ) !== 1 ) {
32
+ return - 1 ;
33
+ }
34
+ }
35
+ }
36
+ mp . set ( mn , Math . max ( mx , mp . get ( mn ) ?? 0 ) ) ;
37
+ }
38
+
39
+ let ans = 0 ;
40
+ for ( const v of mp . values ( ) ) {
41
+ ans += v ;
42
+ }
43
+ return ans ;
44
+ }
45
+ export default magnificentSets ;
Original file line number Diff line number Diff line change @@ -7,8 +7,8 @@ function minScore(_n: number, roads: number[][]): number {
7
7
}
8
8
let ans = Infinity ;
9
9
10
- for ( const [ i , j , d ] of roads ) {
11
- if ( uf . connected ( 1 , i ) && uf . connected ( 1 , j ) ) {
10
+ for ( const [ i , _ , d ] of roads ) {
11
+ if ( uf . connected ( 1 , i ) ) {
12
12
ans = Math . min ( ans , d ) ;
13
13
}
14
14
}
You can’t perform that action at this time.
0 commit comments