아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

Para naszyjników

시간 제한25초메모리 제한1024 MB

요약
두 실의 각 구간에서 같은 길이의 구간 쌍을 골라, 두 구간 합의 홀짝이 같으면서 길이가 최대인 것을 구합니다.
난이도

보통10점 중 6점

유형
해시맵, 누적 합, 문자열 매칭
정답자
아직 제출이 없습니다

문제

Bajtazar od niedawna prowadzi zakład jubilerski w Bajtocji. Właśnie otrzymał nietypowe zlecenie. Klient przekazał mu dwa sznury składające się z różnego rodzaju kamieni szlachetnych i prosi go o przygotowanie pary naszyjników. Klient podał kilka warunków, które muszą spełniać naszyjniki:

  • Oba naszyjniki muszą mieć dokładnie tę samą długość.
  • Jeden naszyjnik musi pochodzić z pierwszego sznura, a drugi z drugiego.
  • Każdy naszyjnik musi powstać ze spójnego fragmentu sznura.
  • Sumaryczna wartość kamieni użytych w pierwszym naszyjniku musi mieć taką samą parzystość jak suma wartości kamieni użytych w drugim naszyjniku.
  • Spośród wszystkich możliwych naszyjników należy wybrać najdłuższy możliwy.

Takie wymagania tylko w Bajtocji!

Pomóż Bajtazarowi wykonać to zlecenie i napisz program, który dla zadanych sznurów wskaże, jakie jest najdłuższe możliwe rozwiązanie.

입력

Pierwszy wiersz standardowego wejścia zawiera liczbę naturalną q (1 ≤ q ≤ 20 000) oznaczającą liczbę zestawów danych. Dalej następuje opis kolejnych zestawów danych.

Opis każdego zestawu danych składa się z trzech wierszy. Pierwszy wiersz opisu zawiera dwie liczby całkowite n i m (1 ≤ n, m ≤ 100 000), oddzielone pojedynczym odstępem, oznaczające liczby kamieni w pierwszym i drugim sznurze. W drugim wierszu opisującym zestaw danych jest opis pierwszego sznura. Składa się on z n liczb całkowitych z zakresu od 0 do 109 oznaczających wartości kolejnych kamieni pierwszego sznura. W kolejnym wierszu opisany jest drugi sznur w postaci ciągu m liczb całkowitych z zakresu od 0 do 109.

W każdym teście suma wartości n oraz m dla wszystkich zestawów danych nie przekracza 20 000 000.

출력

Dla każdego zestawu danych, zgodnie z ich kolejnością na wejściu, Twój program powinien wypisać na standardowe wyjście wiersz z jedną liczbą całkowitą, oznaczającą maksymalną długość naszyjnika spełniającego wymagania klienta.

예제1

  1. 예제 1

    입력
    1
    6 4
    0 1 2 3 4 5
    3 1 3 6
    
    예상 출력
    3