Leetcode contest
565 subscribers
176 photos
7 videos
2 files
59 links
Main channel @azamovme

Leetcode & Messages quotes from Estate developer
Download Telegram
answer
lets follow me
Leetcode contest pinned «github.com/professorDeveloper»
import java.util.*;

public class Solution {
public long minimalCost2(long v0, long v1) {
if (v0 <= 0 && v1 <= 0) return 0;
long cost = 1;
v0 -= 1;
if (v0 > 0 && v1 > 0) {
long k = Math.min(v0, v1);
cost += 2 * k;
v0 -= k;
v1 -= k;
}
if (v0 > 0) {
cost += 2 * v0;
v0 = 0;
}
if (v1 > 0) {
cost += 1;
v1 -= 1;
cost += 2 * v1;
v1 = 0;
}
return cost;
}

public long maxScoreForN3(int[] p, int m) {
boolean[][][][][] visited = new boolean[3][51][51][51][51];
long bestMinScore = 0;
Queue<int[]> q = new LinkedList<>();
q.offer(new int[]{0, 1, 1, 0, 0});

while (!q.isEmpty()) {
int[] st = q.poll();
int pos = st[0], moves = st[1], v0 = st[2], v1 = st[3], v2 = st[4];
long s0 = (long) v0 * p[0];
long s1 = (long) v1 * p[1];
long s2 = (long) v2 * p[2];
long mn = Math.min(s0, Math.min(s1, s2));
bestMinScore = Math.max(bestMinScore, mn);

if (moves < m) {
for (int delta = -1; delta <= 1; delta += 2) {
int newPos = pos + delta;
if (newPos >= 0 && newPos < 3) {
int[] newV = {v0, v1, v2};
newV[newPos]++;
if (!visited[newPos][moves + 1][newV[0]][newV[1]][newV[2]]) {
visited[newPos][moves + 1][newV[0]][newV[1]][newV[2]] = true;
q.offer(new int[]{newPos, moves + 1, newV[0], newV[1], newV[2]});
}
}
}
}
}
return bestMinScore;
}

public boolean canAchieveSinglePass(int[] points, long m, long X) {
long totalVisits = 0;
for (int p : points) {
if (X > 0) {
long need = (X + p - 1) / p;
totalVisits += need;
if (totalVisits > m + points.length + 1) return false;
}
}
long cost = 2 * totalVisits - (points.length + 1);
return cost <= m;
}

public long maxScore(int[] points, long m) {
int n = points.length;
if (m == 0) return 0;

if (n == 2) {
long left = 0, right = 1_000_000_000_000_000L, ans = 0;
while (left <= right) {
long mid = (left + right) / 2;
long v0 = (mid > 0) ? (mid + points[0] - 1) / points[0] : 0;
long v1 = (mid > 0) ? (mid + points[1] - 1) / points[1] : 0;
if (minimalCost2(v0, v1) <= m) {
ans = mid;
left = mid + 1;
} else {
right = mid - 1;
}
}
return ans;
}

long left = 0, right = 1_000_000_000_000_000L, ans = 0;
while (left <= right) {
long mid = (left + right) / 2;
if (canAchieveSinglePass(points, m, mid)) {
ans = mid;
left = mid + 1;
} else {
right = mid - 1;
}
}
return ans;
}
}
Thanks for all
Live stream finished (2 hours)
class Solution {
public String removeOccurrences(String s, String part) {
while (s.contains(part)) {
s = s.replaceFirst(part, "");
}
return s;
}
}
hello
sorry for today
TommorovwContest 🤩🎁
Please open Telegram to view this post
VIEW IN TELEGRAM
Any questions about the competition? 👇
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
str = prompt("Enter message")

let lastWord = '';
for (let i = 0; i < str.length; i++) {
if (str[i] === ' ') {
lastWord = '';
} else {
lastWord += str[i];
}
}

console.log(lastWord);
Hey
Leetcoders anyone here @stc_android dm
🌚
Not bad 🌚
Something comming 🗿
Please open Telegram to view this post
VIEW IN TELEGRAM
🎁🤩 Today We start contest @leetcode7
Please open Telegram to view this post
VIEW IN TELEGRAM