第 197 場力扣周賽題解

2021-10-23 08:28:58 字數 1555 閱讀 8467

5460. 好數對的數目

思路:直接按照題目要求找就可以啦

class solution  else

last = -1;

}return (int)ans;

}}

5211. 概率最大的路徑

思路:最短路變形,沒什麼好說的,因為n很大,我這裡採用spfa演算法。

class solution 

}double dp;

list> list;

public double maxprobability(int n, int edges, double succprob, int start, int end)

dp[start] = 1.0;

queueq = new linkedlist<>();

q.add(start);

used[start] = true;

while (!q.isempty()) }}

}return dp[end];

}}

5463. 服務中心的最佳位置

思路:這個題的類似題很早就見過了,比如說我之前寫的這道題:吊打***。於是我上去直接蟒了模擬退火,但是因為精度問題一直wrong,這裡我先貼出我精度不符合要求的版本。再放篇參考題解的**。

class solution 

}node now, ans, a;

int pos;

double min_dis = double.max_value;

public double getmindistsum(int positions)

ans.x /= pos.length;

ans.y /= pos.length;

work(1000001);

return min_dis;

}private double find_dis(node a)

private void work(double t)

for (int i = 0; i <= 2000; i++)

}private double jud(node now)

return res;

}private double dis(node a, node b)

}

參考題解一(模擬退火,其實已經退化到梯度下降了):

class solution 

}private static final double t = 0.98;

private static final double eps = 1e-8;

private int dx = new int;

private int dy = new int;

public double getmindistsum(int positions) }}

step *= t;

}return ret;

}private double dis(node a, node b)

}

第185場力扣周賽題解

5388.重新格式化字串 思路 做法很多,我的方法是定義兩個佇列分別存數字和字元,然後在滿足題目要求能夠格式化的情況下穿插著加入答案即可。class solution if math.abs q1.size q2.size 1 return if q1.size q2.size work q1,q2...

第 189 場力扣周賽題解

ps 好久沒寫計算幾何了,最後一題乙個簡單的計算幾何問題wa到快結束才過。5412.在既定時間做作業的學生人數 思路 定義sum字首和陣列,令sum starttime i 1,sum endtime i 1 1,然後求一波字首和即可,相信各位在做演算法題已經見了很多次這種套路了。class sol...

第 196 場力扣周賽題解

5452.判斷能否形成等差數列 思路 排序後直接看相鄰元素的差是否唯一即可。class solution 5453.所有螞蟻掉下來前的最後一刻 思路 這題千萬不要往難了想,雖然你要回頭,但是你仔細想想,假如乙個螞蟻往左走的過程中,遇到乙個往右走的螞蟻,此時兩隻螞蟻都要朝著其各自原來相反的方向繼續走,...