## SetCaseSensitiveInfo

I use a 256 GB micro SD card as my main storage of schoolwork files. Today when I try to execute make at D:\...\p4, it fails because there are supposed to be two files with names Sym.java and sym.java. Windows file system by default is not case sensitive, so ‘make’-generated sym.java overwrites the original Sym.java, hence the problem.

I did some searching and found that you can enable case-sensitive for a folder with WSL installed. Just run the following script in powershell/cmd (admin mode):

fsutil file SetCaseSensitiveInfo <your-folder-name> enable

However, I cannot do it on my SD card, as it will always show Access Denied. Therefore I have no choice but to move my p4 to somewhere in drive C:.

## Econ!

BTW，Office系列的新logos很好看。

## 20th Birthday

March 20, 2019 is my 20th birthday. I woke up at 10:30 am (too tired after skiing yesterday), went to work and returned home at 4 pm. Had dinner with Wilson, Marvin, and Daniel at ICHIBAN. Had a nap until 11 pm (Spring Break is the best, yay). Some thoughts:

I just found that March 20, 2019 is the Spring Equinox this year (4:58 pm -0500UTC). So it turned out I was born at the beginning of Spring / end of Winter! Unfortunately here in Madison there isn’t much to enjoy in Spring/Fall (compared to my hometown Yancheng, China or Boston, MA).

My family need to fund me $45,000 (¥300,000) for the rest of 2019 on tuitions and living expenses. I can probably earn a total of$10,000 this year through my part-time job and summer research. I can’t thank my parents enough for their raising and support. But in the meantime both they and I feel pressured because my higher education is a huge investment! Fortunately I will graduate with no debts so that I can live a relatively relaxed life during prime years.

I’m a practical guy. I need the high wage and visa sponsorship of a major US company to pay back my parents and earn a self-accomplished life. I value certain things more than others, so my main everyday spending is just rent, meals, electronics, and that’s it. From my own opinion I don’t think I can take care of myself well in the near future, i.e. having a healthy, regular lifestyle, so no romantic relationship for me! Well that’s not all bad, as I grow up I realize my life philosophy is basically “seize the day while taking responsibility.” Actions bring consequences and being able to take responsibility for your own actions is cool and a sign of maturity. I regret some of my past actions and don’t want to add new regrets in the future. Quoting lyrics from Congratulations:

My mama called, seen you on TV, son
Said sh*t done changed ever since we was on
I dreamed it all ever since I was young
They said I wouldn’t be nothing
Now they always say congratulations
Worked so hard, forgot how to vacation
They ain’t never had the dedication
People hatin’, say we changed and look we made it

My goals for my age of 20 are: a summer internship in 2020, a publication of my research work, an app of my own, good grades, good relationships with professors and classmates, good ranks at programming contests, and of course, a healthy body with good moods.

I shall fulfill my goals and chase my dreams. I may be tired but most happy. I shall not envy others for their accomplishments. I wish I could say “I made it” in the future.

## mac-mini.local

Mac独占Xcode？ 这谁顶得住啊。有生之年我还是想学习一下iOS平台应用的开发 ，于是我搞了一台2018 Mac Mini (Model:MRTT2LL/A)，连在房间的显示屏，全天候开机，当作一个本地服务器。

ssh kesong@mac-mini.local

## Pi Day 2019

BTW，学习（摸鱼）的时候听爵士乐似乎挺让人放松的……

## CS 577 Midterm 1 Prep / Complexity of Some Algorithms

During the preparation for the CS 577 Midterm, I find that it may be helpful if I list the complexity of some algorithms.

• Dijkstra – $$O((n+m)\log n)$$ (using adjacency lists and priority queues)
• Topological Sort – $$O(n)$$

Also, solution to Question 7 in the practice problems (see also this file, and this better one, also a better problem statement by Jeff Erickson).

Solution in part (a) of Question 9 turns out to be essentially finding median of an array in linear time. See this amazing blog post (and this, too).

## C++ Online Judge Tips

I am not new to online judges (OJ), but I am still kind of a newbie. Part of the reason I set up this blog is to keep track of my progress at many things, including solving algorithm programming problems. In particular, this semester I am taking CS 577 taught by Dieter , a great professor and the ACM-ICPC coach of our university (UW-Madison). Dieter is utilizing problems on spoj.com as optional programming problems of the assignments. (See the leaderboard.) In this post I am going to present some nice tricks/tips I use.

#### A C++ Template

#include <bits/stdc++.h>

using namespace std;

const int MAX_N = 1000000 + 10;
const int INF = 0x3f3f3f3f;

}