20260828

20260827

I was so busy getting things done and didn’t have enough time to do journaling today.

20260826

## Daily Report — Aug 26, 2026

- **Weight:** 74.7 kg
- **Calories:** ~2,300 kcal
- **Meals:** Fruits 300, Protein shake 200, Strawberry Matcha Boba 400, McDouble 300, Nuggets 200, Fries 200, Milk soup 200, Nasu don 500
- **Hunger:** 4/10
- **Stress:** 5/10
- **Steps:** 21,339
- **Exercise:** 2h 1m
  - Outdoor run: 15.01 km — 1h 22m (5:29/km)
  - Yoga: 19m
  - Yoga: 18m
- **Active Calories (COROS):** 1,707 kcal
- **Sleep:** 6h 10m
- **HRV:** 55 ms — Above normal (baseline 48 ms; normal 44–52)
- **COROS Stress:** 32

**Summary:** Very high-activity day with a 15 km run. 2,300 kcal is reasonable today; prioritize recovery and sleep rather than trying to compensate tomorrow.

20260825

I’ll try to resume working on Grind 75

20260824

I will try to do LeetCode tomorrow…

## Daily Report — Aug 24, 2026

- **Weight:** 75.6 kg
- **Calories:** ~2,200 kcal
- **Meals:** Protein bar 200, Potato salad 500, Unreal 100, Nasu don 900, Fries 200, Snack 100, Fruits 100, Ice cream 100
- **Hunger:** 3/10
- **Stress:** 4/10
- **Steps:** 13,579
- **Exercise:** 1h 28m
- **Active Calories (COROS):** 933 kcal
- **Sleep:** 5h 52m
- **HRV:** 37 ms — Low (baseline 48 ms; normal 44–52)
- **COROS Stress:** 31

**Note:** Visited SF to meet clients and felt tired.

**Summary:** High activity and calories stayed on target, but short sleep and low HRV fit with feeling tired. Prioritize recovery.

20260823

## Daily Report — Aug 23, 2026

- **Weight:** 75.1 kg
- **Calories:** ~2,100 kcal
- **Meals:** Protein shake 100, Ramen 600, Fruits 400, Chips 100, Rice 200, Eggplant & Chicken 400, Soup 100, Fries 200
- **Hunger:** 2/10
- **Stress:** 4/10
- **Steps:** 12,937
- **Exercise:** 1h 54m
- **Active Calories (COROS):** 1,272 kcal
- **Sleep:** 37 min (COROS; likely unreliable due to unusual sleep schedule)

**Summary:** Very active day with low hunger and calories comfortably within the 1,900–2,200 target. Weight bounced slightly from 74.8 → 75.1 kg; nothing to adjust.

20260822

20260821

20260820

## Daily Report — Aug 20, 2026

- **Weight:** 75.1 kg
- **Calories:** ~2,200 kcal
- **Meals:** Protein bar 200, Buldak 300, Breads 400, Sausage 100, Fruits 200, Coffee 100, Greek yogurt 100, Rice 300, Soup 200, Fishes & Chickens 300
- **Hunger:** 4/10
- **Stress:** 5/10
- **Steps:** 8,079
- **Exercise:** 1h 19m
- **Active Calories (COROS):** 859 kcal
- **Sleep:** 9h 7m
- **HRV:** 49 ms (Normal; baseline 48 ms)

**Summary:** Weight trend remains encouraging. Calories were at the upper end of the 1,900–2,200 target, with manageable hunger, good sleep, and high activity. No changes needed.

20260819

20260818

20260817

20260816

# First attempt
# We are not given a head node, so I thought about ways to avoid rewiring
class Solution:
    def deleteNode(self, node: ListNode) -> None:
        while node.next is not None and node.next.next is not None:
            node.val = node.next.val
            node = node.next

        node.val = node.next.val
        node.next = None

# This seems to be the optimal / most concise one.
# One I understand the solution, it just makes sense.
class Solution:
    def deleteNode(self, node: ListNode) -> None:
        node.val = node.next.val
        node.next = node.next.next

20260815

# Definition for singly-linked list.
# class ListNode:
#     def __init__(self, val=0, next=None):
#         self.val = val
#         self.next = next
from typing import Optional


class Solution:
    def removeElements(self, head: Optional[ListNode], val: int) -> Optional[ListNode]:
        dummy = ListNode(next=head)

        prev = dummy
        node = dummy.next
        while node is not None:
            if node.val != val:
                prev = node
                node = node.next
                continue

            prev.next = node.next
            node = node.next

        return dummy.next

Iterable -> Iterator

20260814

20260813

20260812

20260811

20260810

A JavaBean is a normal Java class that follows standard getter/setter naming so frameworks can read and write its properties by name.

20260809

20260808

20260807

20260806

20260805

class Solution:
    def moveZeroes(self, nums: List[int]) -> None:
        """
        Do not return anything, modify nums in-place instead.
        """
        non_zero_end = -1
        for checking in range(len(nums)):
            if nums[checking] != 0:
                non_zero_end += 1
                nums[checking], nums[non_zero_end] = nums[non_zero_end], nums[checking]
class Solution:
    def moveZeroes(self, nums: list[int]) -> None:
        """
        Do not return anything, modify nums in-place instead.
        """
        zero_count = 0
        while 0 in nums:
            nums.remove(0)
            zero_count += 1

        for _ in range(zero_count):
            nums.append(0)

20260804

20260803

20260802

20260801

Augest already? Time flies by when my life is falling apart.


index 202607 202609