magone Posted August 27, 2008 Report Share Posted August 27, 2008 Ir futbola tirnīrs ar spēļu rezultātiem. Vajag skriptu, kas komandai piešķir attiecīgo vietu. Viss ir vienkārši, kad atšķiras punktu skaits. Sakaārtoju masīvu un viss, bet, pie vienāda punktu skaita jāskatās savstarpējo spēļu rezultāti un attiecīgi jāsarindo komandas. Netieku ar to galā, it sevišķi, ja vienāds punktu skaits ir vairāk par divām komandām. Varbūt kāds zin kādu gatavu skriptu turnīru tabulām vai algoritmu nestandarta kārtošanai vai kādas saites webā par to. Link to comment Share on other sites More sharing options...
Aleksejs Posted August 27, 2008 Report Share Posted August 27, 2008 Kas notiek gadījumā, ja komandām A, B un C ir vienāds punktu skaits un A ir zaudējusi B, kas ir zaudējusi C, kas ir zaudējusi A (ar vienādu vārtu skaitu)? Link to comment Share on other sites More sharing options...
magone Posted August 27, 2008 Author Report Share Posted August 27, 2008 Kas notiek gadījumā, ja komandām A, B un C ir vienāds punktu skaits un A ir zaudējusi B, kas ir zaudējusi C, kas ir zaudējusi A (ar vienādu vārtu skaitu)? Tad skatās visu kopējo turnīrā iegūto vārtu starpību. Link to comment Share on other sites More sharing options...
Aleksejs Posted August 27, 2008 Report Share Posted August 27, 2008 Nu tātad cik saprotu sākotnēji uzdevumu sadalam šādos apakšuzdevumos: 1) atrast katras komandas punktu skaitu 2) atrast katras komandas novietojumu starp vienādo rezultātu ieguvušajām komandām pēc savstarpējo spēļu iznākuma 3) atrast katras komandas novietojumu starp vienādo rezultātu ieguvušajām komandām pēc iesisto/ielaisto vārtu statistikas šķirot rezultātu vispirms pēc 1), tad 2), tad 3) Lai uzrakstītu pieprasījumu, vajadzētu zināt tabulu struktūras. Link to comment Share on other sites More sharing options...
Val Posted September 12, 2008 Report Share Posted September 12, 2008 (edited) Radušās problēmas ar čempionāta tabulas sakārtošanu pēc dažiem nosacījumiem. sakartošanas secība: 0) punktu skaits - punkti (ok) 1) savstarpējo spēļu rezultātiem - vairāk punktu, 2) labākās vārtu starpības savstarpējās spēlēs, 3) lielākā gūto vārtu skaita savstarpējās spēlēs, 4) labākās vārtu starpības visās spēlēs - bilance (ok) 5) mazākās visu spēlētāju soda laiku summas. (ok) Pieņemsim, ka šis ir sākotnējais sql: "... ORDER BY punkti DESC, bilance DESC" Ar 0) un 4) viss vienkārši. Biku čakarē viss pārējais - nav iespējams visu salikt vienā sql pieprasījumā (mysql btw). Izdomāju citu veidu: Ieselektēju katras komandas visu spēlētāju soda minūšu summas, sametu masīvā: $komandu_sodi[$komandas_id] = $sodu_summa; Sakārtoju pēc mazākās summas. Izveidoju kārtošanas secību komandu soda minūtēm - $order_sodi = implode(',', array_keys($komandu_sodi)); Ielieku iekš sql pieprasījuma: "... ORDER BY punkti DESC, bilance DESC, find_in_set(komandas.id, '$order_sodi') ASC" Lab, tik tālu viss easy. Ņemam nākamo nosacījumu: doma arī visu samest kkādā masīvā. Pagaidām tā: masivs[majnieku komandas id][viesu komandas id] = visu savstarpeejo guuto punktu starpība Nekas nenāk prātā, kā to visu pēctam izmantot, lai dabūtu iekš sql :) Ir kāda doma? Edited September 12, 2008 by Val Link to comment Share on other sites More sharing options...
Val Posted October 16, 2008 Report Share Posted October 16, 2008 bump. :) Link to comment Share on other sites More sharing options...
Recommended Posts