Leetcode with dani – Telegram
Leetcode with dani
1.31K subscribers
196 photos
14 videos
56 files
240 links
Join us and let's tackle leet code questions together: improve your problem-solving skills
Preparing for coding interviews
learning new algorithms and data structures
connect with other coding enthusiasts
Download Telegram
Forwarded from Yonathan
Built something cool! 🚀

Verify is my personal project—an API for free, unlimited phone verification using Telegram. No SMS costs, simple integration, and optional self-hosting.

🔗 Check it out: https://verify.yonathan.tech

Would love your feedback!
if u have better ideas, i would love to hear and collaborate with u .please feel free to contact me with this bot @zprogramming_bot
😁161
here is the first question of A2SV weekly contest For G6 i will post each question with their answer

🖊 A. Pens and Pencils

Problem Statement

Tomorrow is a difficult day for Polycarp: he has to attend lectures and practical classes at the university! He writes lectures with pens and practicals with pencils.

• One pen lasts for c lectures.
• One pencil lasts for d practicals.
• His pencil case can hold at most k writing tools in total.

Can Polycarp pack enough pens and pencils to cover the day?

---

Input Format

First line: An integer t (1 ≤ t ≤ 100), the number of test cases.
Each test case: Five integers a, b, c, d, k
a: Number of lectures
b: Number of practical classes
c: Lectures per pen
d: Practicals per pencil
k: Maximum tools in the pencil case

---

Output Format

For each test case, output:

• Two integers x y, where:
x: Number of pens
y: Number of pencils
• Or output -1 if it’s not possible to pack enough tools.

---

Example Input

3
7 5 4 5 8
7 5 4 5 2
20 53 45 26 4


Example Output

2 1
-1
1 3


---

Explanation

Test Case 1:
– Needs ceil(7/4) = 2 pens and ceil(5/5) = 1 pencil.
– Total = 2 + 1 = 3 ≤ 8 (possible).

Test Case 2:
– Needs 2 pens and 1 pencil.
– Total = 2 + 1 = 3 > 2 (not possible).

Test Case 3:
– Needs 1 pen (ceil(20/45)) and 3 pencils (ceil(53/26)).
– Total = 1 + 3 = 4 = 4 (possible).

---

Sample Code (Python)

t = int(input())
for _ in range(t):
a, b, c, d, k = map(int, input().split())
pens_needed = (a + c - 1) // c # Ceiling of a/c
pencils_needed = (b + d - 1) // d # Ceiling of b/d
if pens_needed + pencils_needed <= k:
print(pens_needed, pencils_needed)
else:
print(-1)
3
the second question
B. Integer Points

Problem (brief)

DLS draws n lines of the form y = x + pᵢ and JLS draws m lines of the form y = -x + qⱼ . Count how many pairs (one from each set) intersect at integer coordinates (x, y).

Key Fact

The intersection of y = x + p and y = -x + q is given by:

x = q - p / 2,   y = q + p / 2


For both x and y to be integers, q and p must have the same parity.

Solution

1. Count the number of even and odd integers in sets P and Q.
2. The total number of intersecting pairs is calculated as:

Answer = (even_P × even_Q) + (odd_P × odd_Q)


Implementation

for _ in range(int(input())):
n, P = int(input()), list(map(int, input().split()))
m, Q = int(input()), list(map(int, input().split()))

eP = sum(p % 2 == 0 for p in P) # Count evens in P
oP = n - eP # Count odds in P
eQ = sum(q % 2 == 0 for q in Q) # Count evens in Q
oQ = m - eQ # Count odds in Q

print(eP * eQ + oP * oQ)


Example

Input

3
3
1 3 2
2
0 3
1
1
1
1
1
2
1
1


Output

3
1
0
6
C. Labs (Simplified)

You have n² labs numbered from 1 (lowest) to n² (highest).

Any lab u can send 1 unit of water to any lower lab v if u > v .

Problem Statement

Split the labs into n groups of size n .

For each ordered pair of groups (A, B) , let f(A, B) be the total units sendable from all labs in A to all in B .

Objective: Maximize the minimum f(A, B) over all A ≠ B .

Output

Print any grouping that achieves this.

Example

Input:
3


Output (one possible grouping):
2 8 5
9 3 4
7 6 1


Here, n = 3 , meaning there are labs numbered from 1 to 9.

Every group has 3 labs.

The smallest f(A, B) among all 6 ordered pairs is 4, which is optimal.
Solution
def main():
n = int(input())
groups = [[] for _ in range(n)]
num = 1

for row in range(n):
# decide direction: left‑to‑right on even rows, right‑to‑left on odd
cols = range(n) if row % 2 == 0 else range(n - 1, -1, -1)
for col in cols:
groups[col].append(num)
num += 1

# output
for g in groups:
print(*g)

if __name__ == "__main__":
main()
5
😁10🤣4
🧩 D. Add on a Tree (Simplified)

You are given a tree (a connected graph with no cycles) of n nodes. Each edge in the tree initially has a value of 0.

You can perform the following operation:

> Choose any two leaf nodes (nodes connected to only one other node), and a real number x.
> Then, add x to all edges on the simple path between these two leaf nodes.

🔁 You can repeat this operation as many times as you want, with different pairs of leaves and values.

---

Question

Is it possible to reach any possible configuration of real numbers on the edges using a finite number of such operations?

Print:

YES — if it’s always possible for this tree
NO — if there exists any configuration that you cannot reach

---

📥 Input

• First line: n — number of nodes (2 ≤ n ≤ 10⁵)
• Next n-1 lines: two integers u and v, meaning an edge between node u and node v

It is guaranteed that the graph is a tree.

---

📤 Output

• Print YES or NO

---

📌 Examples

Input

2
1 2


Output

YES
Leetcode with dani
🧩 D. Add on a Tree (Simplified) You are given a tree (a connected graph with no cycles) of n nodes. Each edge in the tree initially has a value of 0. You can perform the following operation: > Choose any two leaf nodes (nodes connected to only one other…
Answer :
def main():
def iinp(): return (int(input()))
def linp(): return (list(map(int, input().split())))
n = iinp()
arr = [0 for i in range(n+1)]
for i in range(n-1):
u,v = linp()
arr[u] += 1
arr[v] += 1
for i in arr:
if i ==2:
print("NO")
return
print("YES")
main()
E. Nauuo and Cards (Simplified Version)

Nauuo has 2n cards:

n real cards numbered from 1 to n

n empty cards, represented as 0

These cards are randomly shuffled and split into:

Nauuo’s hand → a list of n cards

The pile → another list of n cards, ordered top to bottom

Operation
She can:

Choose any card from her hand, and
Play it — move it to the bottom of the pile,
Then draw the top card of the pile into her hand.

She wants the pile to end up as [1, 2, 3, ..., n] (from top to bottom) as fast as possible.
Leetcode with dani
E. Nauuo and Cards (Simplified Version) Nauuo has 2n cards: n real cards numbered from 1 to n n empty cards, represented as 0 These cards are randomly shuffled and split into: Nauuo’s hand → a list of n cards The pile → another list of n cards, ordered…
def main():
n = int(input().strip())
a = list(map(int, input().split()))
b = list(map(int, input().split()))

pos = [0] * (n + 1)
for idx in range(n):
if b[idx]:
pos[b[idx]] = idx + 1

if pos[1] != 0:
i = 2
while i <= n and pos[i] == pos[1] + i - 1:
i += 1
if i - 1 >= 1 and pos[i - 1] == n:
j = i
while j <= n:
if pos[j] != 0 and pos[j] > j - i:
break
j += 1
else:
print(n - i + 1)
return

ans = 0
for card in range(1, n + 1):
if pos[card] != 0:
wait = pos[card] - card + 1
if wait > ans:
ans = wait

print(ans + n)

if __name__ == "__main__":
main()
😁11👨‍💻2
Some of you have been asking me for a structured DSA learning plan.

So I’m sharing the full A2SV year-long roadmap for learning Data Structures and Algorithms — the same one we follow as A2SV students.

If you want a curated collection of problems for each topic, just ask me and I’ll make and share one with you.

This roadmap is very comprehensive and teaches almost all key algorithms and patterns:

1. Python Basics, Conditionals, Loops Functions
2. How to Focus and Planning Time Management
3. DS Basics (Lists Tuples)
4. Best Coding Practices Code Review
5. DS Basics (Sets Dicts)
6. Built‑In Functions and Classes
7. 7 Steps of Highly Effective Problem Solving and Experience Sharing
8. Time Space Complexity
9. Arrays/Lists, Matrices
10. Sorting Part 1 (Bubble, Insertion, Counting, Selection)
11. Two Pointers
12. Sliding Window
13. Prefix Sum
14. Linked Lists I
15. Linked Lists II
16. Greedy
17. Stacks, Queues, Monotonicity
18. Recursion I
19. Tree I
20. Tree II
21. Recursion II
22. Binary Search
23. Sorting II – Part 1
24. Sorting II – Part 2
25. Graph
26. DFS
27. BFS
28. Topological Sort
29. Heap
30. Union Find
31. Bitwise
32. Numerics
33. Greedy II
34. Dynamic Programming I
35. Dynamic Programming II
36. Trie
37. Hashing
38. Strings
39. Shortest Path
40. Numerics II
41. Advanced String Algorithms
42. Segment Tree
12
Forwarded from 「 Eyu core 」 (Eyu)
Six Uncomfortable Lessons We All Need to Learn

1 Your self-love must be stronger than your desire to be loved.
2 You are always responsible for your emotional reactions.
3 Don’t feed your problems with thought—starve them with action.
4 Your life will be defined by your ability to handle uncertainty.
5 If your goal is a healthier mind, start by removing the junk from your diet.
6 Your “best life” doesn’t seek validation—but insecurity will.
8
🤣14
🔥 A2SV Prep + LeetCode Daily Practice Challange🔥
Hey everyone!
I’m starting a group for those who want to:

Stay consistent by doing LeetCode daily
Prepare for A2SV's next cohort (starting November)
Build strong habits and problem-solving skills
Support each other with discussion and motivation

🧠 In the group:

We’ll share daily questions from different DSA topics

You’ll pick at least one question to solve each day from the set

Questions will support both A2SV preparation and personal growth

You’re free to solve more if you want, but the goal is one a day minimum

Let’s grow together and stay accountable! 💪
91
8