LearnToCP
Prijavi se
Navigacija
PočetnaRoad-mapaProblemiO Nama
Teorija
Takmičarsko Znanje
Izbor Radnog Okruženja (IDE)Interaktivni ZadaciOutput-only Zadaci
Osnove
Tvoj Prvi ProgramTipovi podataka, Unos i IzlazC++ sintaksaModuloFunkcijeVektoriMatriceVremenska Složenost Algoritma
Sortiranje
SortiranjeSortiranje PrebrojavanjemRadix Sort
Tehnike Optimizacije
Dva PokazivačaZbir brojeva od 1 do nZbir PrefiksaBinarna PretragaPohlepni AlgoritmiFunkcije Binarne PretrageBinarna Pretraga po RešenjuPodeli, pa Vladaj
Binarni Brojevi
Binarni BrojeviBrojevi u koduOperacije nad BitovimaBitmaske
Matematika
Binarno StepenovanjeProsti BrojeviRastavljanje na proste činioceNZD i NZSEratostenovo SitoModifikovano Sito
Strukture Podataka
Niske (Stringovi)StekRedMapeSkupovi (Set)Red sa PrioritetomKorišćenje Proizvoljnih KriterijumaSegmentna StablaFenvikova StablaSparse TabeleDisjunktni SkupoviSqrt Dekompozicija
Kombinatorika
Pravilo SabiranjaPravilo MnoženjaKombinatorni ObjektiPrincip Uključenja Isključenja
Geometrija
Osnove GeometrijeVektoriVektorski i Skalarni ProizvodLinijePoligoniKonveksni Omotač
Rekurzija
PokazivačiRekurzijaGenerisanje Kombinatornih Objekata
Dinamičko Programiranje
O DP-uDP problemiDP nad StablimaDP nad Bitmaskama
Teorija Grafova
GrafoviDFS i BFSNajkraći PuteviStablaTopološko SortiranjeDajkstrin AlgoritamMinimalna Razapinjuća StablaAlgoritmi Najkraćih Puteva
Napredna Teorija Grafova
Dvostruka PovezanostJako Povezane KomponenteBipartitni GrafMaksimalni Protok u GrafuFord-Fulkersonov AlgoritamDualnost Protoka i Minimalnog PresekaTeško-Laka DekompozicijaCentroidna Dekompozicija
Napredne Strukture Podataka
2D i 3D Segmentna StablaLenjo PropagiranjeImplicitna Segmentna StablaPerzistentna Segmentna StablaNajbliži Zajednički PredakTrieBalansirana Binarna Stabla PretrageMoov Algoritam

Dve obale

Super EasyProblem #42
VremeMemorijaUlazIzlaz
1 s64 MBstdinstdout

Odgovora ima tri, a ne dva - kuća može da stoji i na samoj reci.

Kroz jedan grad protiče reka koja je savršeno prava. Na mapi je reka zadata sa dve različite tačke A i B kroz koje prolazi, a pruža se unedogled u oba smera.

Grad želi da zna kako su mu kuće raspoređene po obalama. Kuća je na levoj obali ako se nalazi levo od nekoga ko stoji u tački A i gleda ka tački B, a na desnoj obali ako se nalazi njemu zdesna. Neke kuće su sagrađene tačno na reci i ne pripadaju nijednoj obali.

Tvoj zadatak je da prebrojiš kuće na svakoj obali.

Ulaz

U prvoj liniji je jedan ceo broj t - broj test primera.

  • U prvoj liniji svakog test primera je jedan ceo broj n - broj kuća.
  • U drugoj liniji su četiri cela broja Ax​, Ay​, Bx​, By​ - dve tačke koje određuju reku. Tačke su različite.
  • U svakoj od narednih n linija su dva cela broja xi​ i yi​ - položaj jedne kuće.

Izlaz

Za svaki test primer ispiši u posebnoj liniji tri cela broja: broj kuća na levoj obali, broj kuća na desnoj obali, i broj kuća koje stoje na reci.

Primer

Input
2
5
0 0 4 4
0 4
1 4
4 0
2 2
5 1
3
0 0 1000000000 1000000000
1000000000 -1000000000
-1000000000 1000000000
5 5
Output
2 2 1
1 1 1

U prvom test primeru reka ide dijagonalno kroz koordinatni početak. Kuće u tačkama (0,4) i (1,4) su iznad nje, kuće u tačkama (4,0) i (5,1) su ispod nje, a kuća u tački (2,2) stoji u vodi.

Ograničenja

1≤t≤10
1≤n≤105
−109≤Ax​,Ay​,Bx​,By​≤109
−109≤xi​,yi​≤109
A=B
n1​+n2​+…+nt​≤2⋅105

Pošalji svoje rešenje

Prijavi se da pošalješ rešenje i pratiš svoj napredak.

Prijavi se