- DONE Ardour
	- 怎么录制
	- Ardour vs. audacity
-
- Leetcode - Happy Number
  collapsed:: true
	- Times:
		- Time when completed: 12:36
		- Time taken to complete: I forgot, very quick I suppose
		- Revisions:
	- Tags:
		- Algorithms: #Floyd_s_cycle_finding_algorithm
		- Difficulty: #difficulty_easy
		- Platforms: #leetcode
	- Links:
		- [link to the problem](https://leetcode.com/problems/happy-number/description/)
	- Problem:
		- Write an algorithm to determine if a number `n` is happy.
		  
		  A **happy number** is a number defined by the following process:
			- Starting with any positive integer, replace the number by the sum of the squares of its digits.
			- Repeat the process until the number equals 1 (where it will stay), or it **loops endlessly in a cycle** which does not include 1.
		- Those numbers for which this process **ends in 1** are happy.
		  
		  Return `true` _if_ `n` _is a happy number, and_ `false` _if not_.
	- Examples:
		- ```
		  Example 1:
		  
		  Input: n = 19
		  Output: true
		  Explanation:
		  12 + 92 = 82
		  82 + 22 = 68
		  62 + 82 = 100
		  12 + 02 + 02 = 1
		  
		  Example 2:
		  
		  Input: n = 2
		  Output: false
		  
		  ```
	- Constraints:
		- `1 <= n <= 231 - 1`
	- Thoughts:
		- Intuition:
			- It loops endlessly in a cycle, which means we need to use a cycle detection algorithm, which happens to be the [[Floyd's Cycle Finding Algorithm]].
		- Approach:
			- Use the Floyd's cycle finding algorithm, with two variables
			- when fast == slow, cycle is found
			- detect if fast is 1, and return values
	- Solution:
		- Code
			- ```java
			  class Solution {
			    private int progress(int n) {
			      int sum = 0;
			      while (n > 0) {
			        sum += (n % 10) * (n % 10);
			        n /= 10;
			      }
			      return sum;
			    }
			    public boolean isHappy(int n) {
			      // loop detection
			      int slow = progress(n);
			      int fast = progress(slow);
			  
			      while (slow != fast) {
			        slow = progress(slow);
			        fast = progress(progress(fast));
			      }
			  
			      return (fast == 1);
			    }
			  }
			  ```
-
- Daily reflection [[Daily reflections]]
  collapsed:: true
	- What I've done
		- 写学交论文
		- 音乐 improvising
		- I met someone, she's gorgeous
	- What I've thought #thoughts
		- Improvisation is fun :)
		- I think I fall in love with someone, I have a strong feeling when she is nearby, and dopamine burst out whenever I talk to her. I don't know if she feel the same (I think to some extent she does. I don't really know, I just follow the flow and enjoy every moment of that). ~~aaand also I erected a lot~~
	- Mood
		- Generally excited, but sometimes exhausted from these happy feelings, I deserve a good sleep.
-
- Todo
	- DONE Edx 写一篇 blues
	  :LOGBOOK:
	  CLOCK: [2023-04-07 Fri 14:36:18]--[2023-04-07 Fri 16:50:36] => 02:14:18
	  :END:
	- DONE 概率论作业
	  :LOGBOOK:
	  CLOCK: [2023-04-07 Fri 17:31:14]--[2023-04-07 Fri 21:19:06] => 03:47:52
	  :END:
		- DONE 22, 23, 24, 25, 26, 27, 29
		- DONE 58, 59
-
- 乐理学习
	- LATER 每天学 15 分钟 Open Music Theory [上次学到的地方](https://viva.pressbooks.pub/openmusictheory/chapter/aspn/)
	  SCHEDULED: <2023-05-09 Tue .+1d>
	  :LOGBOOK:
	  - State "DONE" from "LATER" [2023-04-07 Fri 16:50]
	  - State "DONE" from "LATER" [2023-04-07 Fri 16:52]
	  * State "DONE" from "LATER" [2023-04-10 Mon 22:49]
	  * State "DONE" from "LATER" [2023-04-11 Tue 23:35]
	  CLOCK: [2023-04-12 Wed 09:16:56]--[2023-04-12 Wed 09:44:02] => 00:27:06
	  * State "DONE" from "LATER" [2023-04-12 Wed 09:44]
	  * State "DONE" from "LATER" [2023-04-18 Tue 23:31]
	  * State "DONE" from "LATER" [2023-04-21 Fri 09:30]
	  CLOCK: [2023-04-23 Sun 15:18:42]--[2023-04-23 Sun 15:18:43] =>  00:00:01
	  * State "DONE" from "NOW" [2023-04-23 Sun 15:18]
	  * State "DONE" from "LATER" [2023-04-26 Wed 22:31]
	  * State "DONE" from "LATER" [2023-05-08 Mon 20:47]
	  :END:
	- LATER 每天 5 分钟 Ear training [Teoria](https://www.teoria.com/en/exercises/)
	  SCHEDULED: <2023-05-09 Tue .+1d>
	  :LOGBOOK:
	  - State "DONE" from "LATER" [2023-04-07 Fri 23:31]
	  * State "DONE" from "LATER" [2023-04-11 Tue 16:41]
	  * State "DONE" from "LATER" [2023-04-12 Wed 15:07]
	  CLOCK: [2023-04-21 Fri 14:41:07]--[2023-04-21 Fri 14:41:09] => 00:00:02
	  * State "DONE" from "LATER" [2023-04-25 Tue 11:33]
	  * State "DONE" from "LATER" [2023-04-26 Wed 22:31]
	  * State "DONE" from "LATER" [2023-05-08 Mon 20:48]
	  :END: