https://codeiq.jp/ace/goto_hidenori/q374 に回答してみた