Pagini: 1 [2] 3   În jos
  Imprimă  
Ajutor Subiect: 272 Bridge  (Citit de 21654 ori)
0 Utilizatori şi 1 Vizitator pe acest subiect.
Adriana_S
De-al casei
***

Karma: 51
Deconectat Deconectat

Mesaje: 145



Vezi Profilul
« Răspunde #25 : Septembrie 22, 2006, 13:01:24 »

Citat
Pe pod Fat-Frumos se poate deplasa [...] stationand (va ramane pe aceeasi scandura)

Genial, absolut genial. Vreau si eu sa ma pot deplasa stationand. Sad
Apoi, nu poti sari pe o scandura subreda, dar poti sari de pe ea. Deci scandura nu suporta forta cu care se sare pe ea, dar suporta forta cu care se sare de pe ea. Acu' serios, enuntu' sucks. Tre' sa ne chinuim sa intelegem problema sau sa gasim rezolvarea?
Memorat

pauldb
Nu mai tace
*****

Karma: 821
Deconectat Deconectat

Mesaje: 1.901



Vezi Profilul
« Răspunde #26 : Septembrie 22, 2006, 13:36:21 »

Genial, absolut genial. Vreau si eu sa ma pot deplasa stationand. Sad

Si eu as vrea sa ma pot teleporta, dar nu pot. Tongue Si ce legatura are asta cu problema?  Very Happy

Memorat

Am zis Mr. Green
devilkind
Echipa infoarena
Nu mai tace
*****

Karma: 284
Deconectat Deconectat

Mesaje: 1.240



Vezi Profilul
« Răspunde #27 : Septembrie 22, 2006, 13:58:11 »

Nu cred ca e primul enunt de pe infoarena cu notiuni fictive.  E adevarat ca enuntul e putin cam ciudat, insa aceste lucruri se datoreaza ,  cum am mai spus, schimbarilor pe care acesta le-a suferit din dorinta de a fi cat mai clar si a se intelege cat mai bine ce se vrea. Am vrut ca din enunt sa rezulte modalitatea exacta de deplasare (respectiv stationare) pe acel pod, adik modalitatea de calcularea a rezultatului.

Citat
Tre' sa ne chinuim sa intelegem problema sau sa gasim rezolvarea?
rezolvarea nu mi se pare asa greu de gasit.
Memorat
Adriana_S
De-al casei
***

Karma: 51
Deconectat Deconectat

Mesaje: 145



Vezi Profilul
« Răspunde #28 : Septembrie 22, 2006, 16:19:02 »

Pai asta spun si eu, rezolvarea e simpla, problema e ca enuntu' e dubios, si eu una pana nu mi-a explicat cineva care facuse problema ca stationarea se considera pas nici nu intelegeam exemplu. Ma rog, whatever.
Memorat

wefgef
Nu mai tace
*****

Karma: 1049
Deconectat Deconectat

Mesaje: 3.008


razboinicu' luminii


Vezi Profilul
« Răspunde #29 : Septembrie 22, 2006, 23:08:17 »

mie personal mi s-a parut usor de inteles enuntul, asta probabil si pentru ca problema e inspirata din ceva dat acum cativa ani pe la OJI Smile
Memorat

omului i-au fost date instinctele pentru a supravietui, nu pentru a fi sclavul lor.
devilkind
Echipa infoarena
Nu mai tace
*****

Karma: 284
Deconectat Deconectat

Mesaje: 1.240



Vezi Profilul
« Răspunde #30 : Septembrie 23, 2006, 08:22:02 »

iata ca s-a prins cineva. Oricum problema a fost modificata serios. acolo nu se exista stationare, teleportare si de asemenea se cerea altceva.
Memorat
bogdan2412
Echipa infoarena
Nu mai tace
*****

Karma: 410
Deconectat Deconectat

Mesaje: 951



Vezi Profilul
« Răspunde #31 : Septembrie 23, 2006, 08:29:59 »

Eu de exemplu luam 70 de puncte in concurs tocmai pentru ca stiam problema de la acel ONI... O facusem cu cateva zile inainte... acolo de pe o scandura subreda NU puteai sa sari... Dar oricum nu conteaza acum...
Memorat
cristy
De-al casei
***

Karma: 2
Deconectat Deconectat

Mesaje: 136



Vezi Profilul
« Răspunde #32 : Septembrie 23, 2006, 13:38:13 »

am ajuns la cota 80... am 2 wa...dar am o nelamurire...
stationarea se considera pas?...
[later edit]
ms...am 100
« Ultima modificare: Septembrie 23, 2006, 18:30:12 de către cristy » Memorat

... lipsa de inspiratie ...
devilkind
Echipa infoarena
Nu mai tace
*****

Karma: 284
Deconectat Deconectat

Mesaje: 1.240



Vezi Profilul
« Răspunde #33 : Septembrie 23, 2006, 14:11:04 »

DA.
Memorat
sakka
Strain


Karma: -2
Deconectat Deconectat

Mesaje: 7



Vezi Profilul
« Răspunde #34 : Octombrie 04, 2006, 19:05:16 »

             Am 2 intrebari:
  1.O scandura de tip 3 il poate teleporta pe FF pe o alta scandura de tip 3?
  2.Daca ajungem pe o scandura teleportatoare, numai la urmatorul pas are loc teleportare pe pozitia respectiva?
Memorat
cristy
De-al casei
***

Karma: 2
Deconectat Deconectat

Mesaje: 136



Vezi Profilul
« Răspunde #35 : Octombrie 04, 2006, 19:22:54 »

1. DA
2. Teleportarea are loc automat, fara sa mai faca el vreun pas, cu toate acestea, se considera pas
Memorat

... lipsa de inspiratie ...
marcelcodrea06
Vizitator
« Răspunde #36 : Noiembrie 09, 2006, 19:27:18 »

Eu am folosit memorie statica la implementare(o matrice de 4001*4001 ), programare dinamica inainte (ca si in solutia oficiala) si am inlocuit "%" cu o intructiune de decizie si o operatie de scadere cand este cazul ! Recurenta am facut-o pe matrice in mod clasic , folosind cateva if-uri si cu toate acestea  iau TLE pe ultimele 6 teste ! Unde gresesc ? Ce imi scapa ?

P.S. Brick wall

                                                                                                                         
                                                                                                             Multumesc anticipat !
Memorat
devilkind
Echipa infoarena
Nu mai tace
*****

Karma: 284
Deconectat Deconectat

Mesaje: 1.240



Vezi Profilul
« Răspunde #37 : Noiembrie 09, 2006, 19:56:01 »

ultimele 6 teste sunt testele mari, eu le-am facut teoretic ptr a pica solutia cu dinamica inapoi in n^3, insa dak faci dinamica inainte esti pe solutia cea buna, incearca sa mai obtimizezi cate ceva.
Memorat
cos_min
Nu mai tace
*****

Karma: 48
Deconectat Deconectat

Mesaje: 493


live


Vezi Profilul
« Răspunde #38 : Noiembrie 09, 2006, 20:16:39 »

Ce complexitate ai ? Trebuie O(n*maxim), unde maxim este numarul maxim de pasi. 
Memorat

vid...
marcelcodrea06
Vizitator
« Răspunde #39 : Noiembrie 09, 2006, 21:22:34 »

Ce complexitate ai ? Trebuie O(n*maxim), unde maxim este numarul maxim de pasi. 
Complexitatea este O (n*3999) , adica programul meu executa cel mult 16 000 000 operatii + cele de inceput(0(n)) care pot fi considerate insignifiante !

Voi cate if-uri folositi la parcurgerea matricii pentru fiecare (i,j) ?  Confused

Citat
Pe pod Fat-Frumos se poate deplasa [...] stationand (va ramane pe aceeasi scandura)


Apoi, nu poti sari pe o scandura subreda, dar poti sari de pe ea. Deci scandura nu suporta forta cu care se sare pe ea, dar suporta forta cu care se sare de pe ea. Acu' serios, enuntu' sucks. Tre' sa ne chinuim sa intelegem problema sau sa gasim rezolvarea?
Btw mi se pare logic sa poti sari de pe o scandura subreda si sa nu poti sa ajungi pe ea prin saritura sau teleportare, deoarece lui FF nu-i pasa ce s-a intamplat cu scandura subreda din spate dupa ce s-a desprins de pe ea . Daca ea cedeaza atunci cand FF sare sau se teleporteaza pe ea , atunci eroul ar putea sa fie relativ "incomodat"(Teoria chibritului generalizata) ....
Memorat
cos_min
Nu mai tace
*****

Karma: 48
Deconectat Deconectat

Mesaje: 493


live


Vezi Profilul
« Răspunde #40 : Noiembrie 09, 2006, 22:57:33 »

si in ce timp raspunzi la cele m intrebari ? O(m) nu?

nu prea cred ca [virgula] conteaza nr de if-uri folosite. si la modulo -> poti face modulo dar numai daca ii cazu, adica daca valoarea la un moment depaseste sau ii egala cu 666013 . Cam atat ii tot. spor.
Memorat

vid...
ditzone
Vizitator
« Răspunde #41 : Noiembrie 10, 2006, 00:26:55 »

Poti sa nu faci deloc modulo: daca rezultatul unei adunari e mai mare decat 666013, scazi 666013 la rezultat.
Memorat
marcelcodrea06
Vizitator
« Răspunde #42 : Noiembrie 10, 2006, 20:59:30 »

Am implementat cu scadere de la inceput ....
Nu inteleg de ce sursa consuma atat timp ... pentru fiecare scandura a[j] verific daca poate avea ca destinatie a[j+1] sau a[j+2] , si daca sc. j nu este teleportoare atunci adun la b[i+1][j] pe b[ i ][ j ] .... in cazul in care se poate ajunge pe a[j+1] sau pe a[j+2] folosesc un for care merge pe numarul de pasi (1...3999) si aduna la b[i+1][j+1] sau/si la b[i+1][j+2] , dupa caz , pe b[ i ][ j ] ! Daca se poate ajunge pe scandura destinatie corespunzatoare unei scanduri teleportoare adun la b[i+1][destinatie[j]] pe b[ i ][ j ] !
E asa de simplu rationamentul incat nu-mi pot da seama ce se intampla....Voi nu faceti asa ?   Think

Ms oricum pt sfaturi !
« Ultima modificare: Noiembrie 11, 2006, 09:48:58 de către marcelcodrea06 » Memorat
marcelcodrea06
Vizitator
« Răspunde #43 : Noiembrie 11, 2006, 13:12:38 »

Daca trimit :
Cod:
#include<stdio.h>
long n,i,l,b[4001][4001],xx,yy,ll,j,aux,q;
int main()
{
 freopen("bridge.in","r",stdin);
 freopen("bridge.out","w",stdout);
 scanf("%ld %ld",&n,&ll);
 for(j=1;j<=n;j++)
 for(i=1;i<=3999;i++)
  b[i][j]=1;
  printf("0 \n");
  fclose(stdout);
  return 0;
}

Programul imi depaseste timpul de executie pe ultimele 6 teste !   Shocked   Care este logica ?

Cod:
TEST 1	...[0.05s]...	Incorect sau fisier iesire lipsa
TEST 2 ...[0.05s]... Incorect sau fisier iesire lipsa
TEST 3 ...[0.06s]... Incorect sau fisier iesire lipsa
TEST 4 ...[0.07s]... Incorect sau fisier iesire lipsa
TEST 5 ...[1.13s]... Time limit exceeded
TEST 6 ...[1.12s]... Time limit exceeded
TEST 7 ...[1.03s]... Time limit exceeded
TEST 8 ...[1.12s]... Time limit exceeded
TEST 9 ...[1.06s]... Time limit exceeded
TEST 10 ...[1.03s]... Time limit exceeded
Memorat
cos_min
Nu mai tace
*****

Karma: 48
Deconectat Deconectat

Mesaje: 493


live


Vezi Profilul
« Răspunde #44 : Noiembrie 11, 2006, 13:27:47 »

fa intreaga citire...si zi daca iti intra in timp. si inca ceva fara fclose(stdout) si poti folosi int si la citire %d nu %ld .

« Ultima modificare: Noiembrie 11, 2006, 13:29:51 de către cos_min(cosi) » Memorat

vid...
u-92
Vizitator
« Răspunde #45 : Noiembrie 11, 2006, 13:34:55 »

Problema este ca tu accesezi indicii rasturnati.
http://info.devnet.ro/articole.php?page=art&art=2
Memorat
marcelcodrea06
Vizitator
« Răspunde #46 : Noiembrie 11, 2006, 15:17:31 »

Da....mersi mult ! Asta era problema ! Eu incercam sa optimizez degeaba , din moment ce spargeam linia de cache des ! Iata ca ai de invatat si acolo unde credeai ca nu se poate invata nimic , la accesarea unor elemente din memorie ! Mersi inca o data ! Ok
Memorat
vladtarniceru
De-al casei
***

Karma: 81
Deconectat Deconectat

Mesaje: 145



Vezi Profilul
« Răspunde #47 : Iunie 27, 2011, 19:39:13 »

imi explica si mie cineva va rog ce trebuie sa fac cand ma opresc pe o scandura teleportatoare?

pe exemplu pentru al treilea query se afiseaza 0 cu toate ca nr de pos de a ajunge sunt 2
apoi, pentru testul asta

6 5
3 0 3 3 1 2
2
5
6
1 1
2 1
2 4000
5 4000
6 4000

trebuie sa afisez 1 pentru query-ul 1 1, cu toate ca ma opresc pe scandura de tip 3..
ma poate lamuri si pe mine cineva va rog? Smile
multumesc Smile
Memorat
darren
Client obisnuit
**

Karma: 106
Deconectat Deconectat

Mesaje: 76



Vezi Profilul
« Răspunde #48 : Iunie 28, 2011, 16:06:37 »

Citat
Numarul de moduri de a ajunge pe o scandura lipsa sau pe o scandura teleportoare care are ca destinatie o scandura lipsa sau subreda este 0
Din cauza asta se afiseaza 0 la query (scandura teleportoare din exemplu duce pe scandura 4, care este subreda).

Altfel, singura restrictie pentru scandurile teleportoare este:
Citat
In momentul in care Fat-Frumos ajunge pe o scandura teleportoare el va fi teleportat pe scandura destinatie indiferent daca el vrea sau nu (nu poate stationa, sari sau pasi de pe ea)

Se intampla acelasi lucru si pentru exemplul dat de tine...
Memorat
vladtarniceru
De-al casei
***

Karma: 81
Deconectat Deconectat

Mesaje: 145



Vezi Profilul
« Răspunde #49 : Iunie 29, 2011, 08:24:50 »

multumesc am rezolvat pana la urma Smile
Memorat
Pagini: 1 [2] 3   În sus
  Imprimă  
 
Schimbă forumul:  

Powered by SMF 1.1.19 | SMF © 2006-2013, Simple Machines