>>21
Kotlin
https://paiza.io/projects/mOAfjYjLJx67zhwlGiIuJw

次の月の1日の曜日を求めてそこから何日引くかを計算して引いているだけ。
java.time.LocalDate クラス使っているので Java でも似たようなプログラムは作れると思う。