Problem hidden
|This problem was hidden by Editorial Board member probably because it has incorrect language|version or invalid test data, or description of the problem is not clear.|

FR_14_12 - Lista

Grześ i Jaś dowiedzieli się na lekcji co to są trójki pitagorejskie.

Urządzają sobie zawody, w których wygra ten, kto wypisze ich więcej. Zwycięzca będzie mógł jako pierwszy po szkole usiąść do ich ulubionej gry Ice Tower. Jaś zapisał te najbardziej oczywiste trójki pitagorejskie: (3, 4, 5) i (5, 12, 13). Po dalszych obliczeniach znalazł (6, 8, 10). Jednak zaraz sobie uświadomił, że ta się nie liczy, bo jest 'wielokrotnością' (3, 4, 5). Myśli i liczy, liczy i myśli, ale nie może znaleźć żadnej kolejnej trójki. Patrzy na Grzesia, który zapisał już prawie całą stronę w zeszycie. Rozgląda się gorączkowo i widzi Ciebie, jak przyglądasz się ich zmaganiom.

"Umiesz programować" - pyta Jaś?
"Umiem" - odpowiadasz.
"Doskonale. Napisz mi proszę program, który wypisze trójki pitagorejskie!".
"Ile chcesz tych trójek?" - pytasz.
"WSZYSTKIE!"

Wejście

Na wejściu pojawią się dwie liczby n i m.
n - ilość różnych trójek pitagorejskich do wypisania (0 < n <=105)
m
- maksymalna wartość, jaką może osiągnąć dowolna składowa trójki (100 <= m <= 106).

Wyjście

n linii zawierające różne trójki pitagorejskie (wielokrotności już wypisanych się nie liczą) mniejsze lub równe m.

Przykład

Wejście

10 100

Wyjście

3 4 5
5 12 13
7 24 25
8 15 17
9 40 41
11 60 61
12 35 37
13 84 85
16 63 65
20 21 29


Trójki można wypisywać w dowolnej kolejności.
Pojawienie się powtarzającej trójki (np. wielokrotności już wypisanej) natychmiast przerywa działanie programu.
Wartości są tak dobrane, że zawsze istnieje rozwiązanie.


Dodane przez:Grzegorz Spryszyński
Data dodania:2021-12-17
Limit czasu wykonania programu:1s
Limit długości kodu źródłowego50000B
Limit pamięci:1536MB
Cluster: Cube (Intel G860)
Języki programowania:All except: GOSU
© Spoj.com. All Rights Reserved. Spoj uses Sphere Engine™ © by Sphere Research Labs.