balanta

Time limit: 0.1s Memory limit: 4MB Input: balanta.in Output: balanta.out

Gigel are o “balanță” mai ciudată pe care vrea să o echilibreze. De fapt, aparatul este diferit de orice balanță pe care ați văzut-o până acum. Balanța lui Gigel dispune de două brațe de greutate neglijabilă și lungime 1515 fiecare. Din loc în loc, la aceste brațe sunt atașate cârlige, pe care Gigel poate atârna greutăți din colecția sa de GG greutăți de valori distincte (numere naturale între 11 și 2525). Gigel poate atârna oricâte greutăți de orice cârlig, dar trebuie să folosească toate greutățile de care dispune.

Folosindu-se de experiența participării la Olimpiada Națională de Informatică, Gigel a reușit să echilibreze balanța relativ repede, dar acum dorește să știe în câte moduri poate fi ea echilibrată.

Cerinţă

Cunoscând amplasamentul cârligelor și setul de greutăți pe care Gigel îl are la dispozitie, scrieți un program care calculează în câte moduri se poate echilibra balanța. Se presupune că este posibil să se echilibreze balanța (va fi posibil pe toate testele date la evaluare).

Date de intrare

Fișierul de intrare balanta.in are urmatoarea structură:

  • pe prima linie, numărul CC de cârlige și numărul GG de greutăți;
  • pe următoarea linie, CC numere întregi, distincte, ordonate crescător, cuprinse între 15-15 și 1515 inclusiv, reprezentând amplasamentele cârligelor, prin poziția pe axa X față de centrul balanței, în condițiile în care nu este atârnată nici o greutate (deci balanta este echilibrată și se aliniază cu axa XX; valoarea absolută a distanțelor reprezintă distanța față de centrul balanței, iar semnul precizează brațul balanței la care este atașat cârligul, - pentru brațul stâng și + pentru brațul drept);
  • pe următoarea linie, GG numere naturale distincte ordonate crescător, cuprinse între 11 si 2525 inclusiv, reprezentând valorile greutăților pe care Gigel le va folosi pentru a echilibra balanța.

Date de ieșire

Fișierul de ieșire balanta.out conține o singură linie, pe care se află un număr MM, numărul de variante de plasare a greutăților care duc la echilibrarea balanței.

Restricții și precizări

  • 2C202 \leq C \leq 20;
  • 2G202 \leq G \leq 20;
  • greutățile folosite au valori naturale între 11 și 2525;
  • numarul MM cerut este între 11 si 2 000 000 0002 \ 000 \ 000 \ 000;
  • Balanta se echilibrează dacă suma produselor dintre greutăți și coordonatele unde ele sunt plasate este 00 (suma momentelor greutăților față de centrul balantei este 00).

Exemplu

balanta.in

2 4
-2 3
3 4 5 8

balanta.out

2

Log in or sign up to be able to send submissions!