Problem-Solving Guide: Predicting the Algorithm Tags and Difficulty for
  Competitive Programming Problems
Juntae Kim Eunjung Cho Dongwoo Kim Dongbin Na
The recent program development industries have required problem-solving
abilities for engineers, especially application developers. However, AI-based
education systems to help solve computer algorithm problems have not yet
attracted attention, while most big tech companies require the ability to solve
algorithm problems including Google, Meta, and Amazon. The most useful guide to
solving algorithm problems might be guessing the category (tag) of the facing
problems. Therefore, our study addresses the task of predicting the algorithm
tag as a useful tool for engineers and developers. Moreover, we also consider
predicting the difficulty levels of algorithm problems, which can be used as
useful guidance to calculate the required time to solve that problem. In this
paper, we present a real-world algorithm problem multi-task dataset, AMT, by
mainly collecting problem samples from the most famous and large competitive
programming website Codeforces. To the best of our knowledge, our proposed
dataset is the most large-scale dataset for predicting algorithm tags compared
to previous studies. Moreover, our work is the first to address predicting the
difficulty levels of algorithm problems. We present a deep learning-based novel
method for simultaneously predicting algorithm tags and the difficulty levels
of an algorithm problem given. All datasets and source codes are available at
https://github.com/sronger/PSG_Predicting_Algorithm_Tags_and_Difficulty.