Prihlásenie Registrácia  

C - Inteligentné križovatky

Časový limit: 2s, Pamäťový limit: 64MiB

Programovacie jazyky: Pascal, C, C++, Java, C++0x, Python 3

Počet bodov: 1

[ Pošli riešenie ] [ Tvoje riešenia ] [ Správne riešenia ] [ Vzorové riešenie ]

Mesto sa rozhodlo spustiť systém inteligentných križovatiek, ktoré budú riadené na základe monitorovania premávky, polohy autobusov a ďalších dát. Firma, ktorá sa ujala zákazky, plánuje sfunkčniť N vybraných križovatiek. Firma bude pracovať bez voľného dňa a dokáže zapojiť a spojazdniť jednu križovatku za deň, teda po N dňoch budú nainštalované všetky križovatky. Po dohode s mestom má vyhradenú hodinu denne vo večerných hodinách na priebežné testovanie systému. Existujú dve verzie testov. Test svetelnej signalizácie overuje funkčnosť ovládania a synchronizácie semaforov. Druhý test kontroluje funkčnosť senzorov prítomných na križovatke a dostupnosť údajov z mestskej hromadnej dopravy. Firma sa môže rozhodnúť, ktorý z testov v daný deň aplikuje. Na všetkých už spojazdených inteligentných križovatkách (vrátane tej, ktorá je inštalovaná v daný deň) prebieha v rovnaký deň rovnaký test.

Každý test vyžaduje iný typ spolupráce od mesta. Firma sa preto s mestom dohodla na súhrnnom maximálnom počte jednotkových testov pre oba typy. V prvý deň sa teda aplikuje jeden test, v druhý deň dva rovnaké testy na dvoch križovatkách, v tretí deň tri testy až napokon v N-tý deň rovnaký test na všetkých N križovatkách. Zistite koľko rôznych možností priebežného testovania má firma k dispozícii. Scenár priebežného testovania sa líši od iného ak existuje aspoň jeden deň, v ktorom sa líši typ použitého testu.

Úloha

Vypíšte počet možností ako môžu prebiehať priebežné testovania systému inteligentných križovatiek

Vstup

Vstupom su tri medzerou oddelené čísla N, S a T. N definuje počet dní na inštaláciu N križovatiek a spustenie priebežného testovania na už sprevádzkovaných miestach. Hodnota S určuje maximálny počet testov svetelnej signalizácie a T definuje maximálny počet testov funkčnosti zberu dát.

Výstup

Výstup obsahuje jedno číslo popisujúce počet rôznych možností priebežného testovania počas N dní. Výsledok nech je modulo 10^9+7.

Obmedzenia

1 ≤ N ≤ 1 000
0 ≤ S ≤ 200 000
0 ≤ T ≤ 200 000
1 ≤ S+T

Príklad

Vstup:

4 3 8

Výstup:

3