Operationen (Modulo m)

Im Zuge ihrer weiteren Forschung an Grafikkarten ist das Team nun an einen Punkt gelangt, an dem für jedes Zahlenpaar mehrere Berechnungen erforderlich sind. Da das Team seinen Code derzeit testet, sollen Sie ein Programm schreiben, das Addition, Subtraktion und Multiplikation von Zahlen modulo m überprüft.
Gegeben sind zwei Listen ganzer Zahlen und . Sie sollen folgende Ausdrücke berechnen:
Da ähnliche Berechnungen auf einer GPU schneller ausgeführt werden können, sollen Sie zunächst alle Ergebnisse für die Addition, dann alle Ergebnisse für die Subtraktion und anschließend alle Ergebnisse für die Multiplikation ausgeben.

Eingabe

Die erste Zeile der Eingabe enthält zwei ganze Zahlen n (1 ≤ n ≤ 100 000) und m (1 ≤ m ≤ ).
Die zweite Zeile enthält n durch Leerzeichen getrennte ganze Zahlen ().
Die dritte Zeile enthält n durch Leerzeichen getrennte ganze Zahlen ().

Ausgabe

Die erste Zeile der Ausgabe soll alle Additionen enthalten, getrennt durch ein Leerzeichen.
Die zweite Zeile soll alle Subtraktionen enthalten, getrennt durch ein Leerzeichen.
Die letzte Zeile soll alle Multiplikationen enthalten, getrennt durch ein Leerzeichen.

Beispiele

Eingabe
Ausgabe
3 3 1 2 1 3 4 1
1 0 2 1 1 0 0 2 1

Erläuterung

  1. Addition (erste Zeile)
  1. Subtraktion (zweite Zeile)
  1. Multiplikation (dritte Zeile)
 

Constraints

Time limit: 2 seconds

Memory limit: 512 MB

Output limit: 3 MB

To check your solution you need to sign in
Sign in to continue