[PYTHON] AtCoder What I did before it turned green, my impressions

Since I was able to reach green with Atcoder, I would like to summarize what I learned and my impressions. I don't know what the content of the decoction is, but I hope it helps people who are starting Atcoder from now on. スクリーンショット 2020-07-05 16.11.24.png

Self-introduction

・ I am a graduate student of chemistry, and in my second year as a member of society, I have never properly learned about information engineering. ・ Mathematics is an ordinary ability for a graduate student in science. -The language used is Python, and C ++ can also read code and implement A and B problems. ・ I started studying programming after I became a member of society. (I wrote a simple code even when I was in graduate school)

What i did

When I solved the past questions, the rate went up, and in the end, that's all, but I summarized two points that I was conscious of in order to improve efficiency.

1. Solve a problem of appropriate difficulty

スクリーンショット 2020-07-05 16.35.10.png This is the result of the past questions I solved, which is characterized by a high percentage of brown problems solved, light blue I think that the ratio of solving the problem is low. The gray problem seems to be solved reasonably well, but this is not solved for the purpose of raising the rate because there are about 30% of the problems solved for learning C ++. The reason for this achievement is the Atcoder frequent occurrence algorithm that causes brown problems when the green rate cannot be reached. It is important to understand correctly, because I thought that the light blue problem was difficult and inefficient to learn (I could not understand the essence of the problem correctly). I've been working on the green problem since the rate was close to 800 and I was able to solve the brown problem without difficulty.

2. Understand the algorithms you should learn

As mentioned in other people's articles on reaching green, there are about 10 algorithms that should be understood by green rate </ font>. If there are 10, I think that some things are good and some things are not good. Focus on what you are not good at. By the way, I am not good at binary search and DP. .. As a method of studying algorithms, I studied by repeating the implementation for a problem that I had solved once, because understanding and implementation are different problems, studying implementation is different from solving a new problem. It may be better to do it the way.

Finally

I am interested in the field of data science and am involved in such content at work. (Efforts for kaggle is also written, so please read it if you like.) Therefore, I was originally not interested in algorithms, and I thought that it would not be useful for business. However, when I actually learn through Atcoder, it is interesting to think about algorithms, and I feel that they are also useful in business. I especially feel the amount of calculation, the speed of coding, and the speed of finding bugs. Therefore, I would like people who are not interested in algorithms to try competitive programming like Atcoder once.