AtCoder Beginner Contest 133 C - Remainder Minimization 2019【Python】

https://atcoder.jp/contests/abc133/tasks/abc133_c

AtCoder ProblemsのRecommendationでDifficulty: 592、Solve Probability: 48%でした。
(i * j) % 2019が0となるi, jがL, Rの範囲にある時は0を出力、それ以外については全探索という方針で解きましたが、
ユーザー解説
https://blog.hamayanhamayan.com/entry/2019/07/08/212920
では場合分けせず全探索して0になった時点でループを抜ける実装になっており勉強になりました。

L, R = map(int, input().split())
ni = L // 2019
nj = R // 2019

if nj - ni > 1:
    print(0)
else:
    s = set()
    for i in range(L, R+1):
        s.add(i % 2019)
    s = list(s)
    ans = 2019
    for i in range(len(s)):
        for j in range(len(s)):
            if i == j:
                continue
            ans = min(ans, s[i] * s[j] % 2019)
    print(ans)