Fil-passi
1. Torta għal sitta
Dikjarazzjoni tal-problema
Il-limitu ta' żmien huwa ta' 4 sekondi.
Għandek torta. Meta wieħed iħares minn fuq, il-kejk għandu forma ta 'poligonu (strettament) konvess. Int tingħata l-koordinati tal-vertiċi f'interi X u Y.
Għandek ħames ħbieb. Trid taqsam it-torta f'sitt biċċiet ta 'żona ugwali (iżda mhux neċessarjament l-istess forma). Naturalment, kulħadd jista 'jagħmel dan f'ħames qatgħat, iżda pro biss jista' jagħmel dan fi tliet qatgħat.
Sib tliet qatgħat f'linji dritti minn punt wieħed li jaqsam it-torta f'sitt partijiet indaqs. Stampa {x, y, d1, d2, d3}, fejn (x, y) huwa l-punt komuni tat-tliet qatgħat kollha, u d1, d2, d3 huma l-angoli tad-direzzjoni tal-qatgħat f'radians.
definizzjoniKlassi: CakeForSix
Metodu: maqtugħ
Parametri: int[], int[] Ritorn: double[] Firma tal-metodu: double[] cut(int[] x, int[] y)
(kun żgur li l-metodu tiegħek huwa pubbliku)
Noti
- Id-direzzjoni pożittiva tul l-assi x hija 0 (radjani), id-direzzjoni pożittiva tul l-assi y hija pi / 2 (radjani).
- Qatgħa fid-direzzjoni d hija simili għal qatgħa fid-direzzjoni pi * k + d għal kull numru sħiħ k.
- Tista' toħroġ kwalunkwe direzzjoni, m'għandhomx għalfejn ikunu minn [0, pi).
- Min jiggrada jikkalkula l-erja tas-sitt biċċiet tal-kejk tiegħek f'doppji. It-tweġiba tiġi aċċettata jekk id-differenza relattiva jew assoluta bejniethom tkun inqas minn 10^(-4).
- B'mod aktar preċiż, ħalli X u Y ikunu l-iżgħar u l-akbar mis-sitt oqsma tiegħek ikkalkulati mill-grader. Imbagħad it-tweġiba tiegħek tiġi aċċettata jekk Y
- (Il-verżjoni oriġinali tal-problema użat preċiżjoni ta '1e-7 minflok 1e-4. Biex issolvi din il-problema fl-arkivju, il-limitu ta' preċiżjoni tbaxxa minħabba l-preżenza ta 'każijiet ta' sejħa li x'aktarx jagħmlu l-problema mhux solvabbli bi preċiżjoni. ta' 1e-7. F'dinja ideali, il-limiti ma jippermettux każijiet bħal dawn u xorta jeħtieġu preċiżjoni għolja, għalhekk is-soluzzjoni tal-problema b'xi ottimizzazzjoni numerika ġenerali mhix faċli.)
Restrizzjonijiet
- x fih minn 3 sa 50 element inklużi.
- y fih l-istess numru ta' elementi bħal x.
- il-koordinati kollha bejn 0 u 10 inklużi
- x u y jiddefinixxu poligonu konvessi f'direzzjoni kontra l-arloġġ.
Oriġinali bl-Ingliż
Dikjarazzjoni tal-Problema
Il-limitu ta' żmien huwa ta' 4 sekondi.
Għandek kejk. Jidher minn fuq, il-kejk huwa poligonu (strettament) konvess. Int tingħata l-koordinati tal-vertiċi tagħha fl-int[]sx u y.
Għandek ħames ħbieb. Issa trid tnaqqas il-kejk f'sitt biċċiet ta 'żona ugwali (iżda mhux neċessarjament forma ugwali). Naturalment, kulħadd jista 'jagħmel dan f'ħames qatgħat - iżda pro veru biss jista' jagħmel dan fi tlieta!
Sib tliet qatgħat dritti li jgħaddu mill-istess punt li qatgħu l-kejk f'sitt partijiet ugwalment kbar. Ritorn {x, y, d1, d2, d3}, fejn (x, y) huwa l-punt komuni tat-tliet qatgħat, u d1, d2, d3 huma d-direzzjonijiet tagħhom f'radians.
definizzjoni
Klassi: CakeForSix
Metodu: maqtugħ
Parametri: int[], int[] Ritorn: double[] Firma tal-metodu: double[] cut(int[] x, int[] y)
(kun żgur li l-metodu tiegħek huwa pubbliku)
Noti
— Id-direzzjoni pożittiva tul l-assi x hija 0 (radjani), id-direzzjoni pożittiva tul l-assi y hija pi/2 (radjani).
— Qatgħa fid-direzzjoni d hija l-istess bħal qatgħa fid-direzzjoni pi*k+d għal kull numru sħiħ k.
— Tista' tirritorna xi direzzjonijiet, m'għandhomx għalfejn ikunu minn [0,pi).
— Il-grader se jikkalkula l-erjas tas-sitt biċċiet tal-kejkijiet tiegħek fid-doppji. It-tweġiba tiġi aċċettata jekk id-differenza relattiva jew assoluta bejniethom tkun inqas minn 10^(-4).
— B'mod aktar preċiż, ħalli X u Y ikunu l-iżgħar u l-akbar mis-sitt oqsma tiegħek, kif ikkalkulati mill-grader. Imbagħad, it-tweġiba tiegħek tiġi aċċettata jekk Y < max( X + 10^(-4), X * (1+10^(-4)) ).
— (Il-verżjoni oriġinali tal-problema użat preċiżjoni 1e-7 minflok 1e-4. Biex tissolva din il-problema fl-arkivju l-limitu ta’ preċiżjoni tbaxxa minħabba l-eżistenza ta’ każijiet ta’ sfida li x’aktarx jagħmlu l-kompitu mhux solvubbli bi preċiżjoni 1e-7 F'dinja ideali r-restrizzjonijiet ma jippermettux każijiet bħal dawn u xorta jeħtieġu preċiżjoni għolja, sabiex ma jkunx faċli li tissolva l-problema permezz ta 'xi ottimizzazzjoni numerika ġenerali.)
Limitazzjonijiet
— x ikollu bejn 3 u 50 element, inklużi.
— y se jkollha l-istess numru ta’ elementi bħal x.
— Il-koordinati kollha se jkunu bejn 0 u 10,000, inklużi.
— x u y se jiddeskrivu poligonu konvess f'ordni kontra l-arloġġ.
eżempji
0)
{0, 20, 30, 50, 30, 20}
{10, 0, 0, 10, 20, 20}
Ritorni:
{24.999999999437453, 9.999999999500002, 0.0, 0.7266423406817211, 2.4149503129080787}
Eżagonu simetriku iżda irregolari. It-tweġiba eżempju tikkorrispondi għal qtugħ min-nofs orizzontalment u tagħmel żewġ qatgħat oħra miċ-ċentru li jaqsmu kull biċċa fi tliet biċċiet.
1)
{0, 1000, 0}
{0, 0, 1000}
Ritorni:
{333.3333333331763, 333.3333333332546, 0.7853981633986264, 2.0344439357948154, 2.6779450445891753}
Trijangolu rettangolo. Għal darb'oħra, nistgħu nibdew b'wieħed minn tliet qatgħat tul l-assi tas-simetrija.
2)
{40, 70, 90, 90, 50}
{30, 20, 40, 100, 60}
Ritorni:
{69.79517771922892, 52.77575974637605, 2.0616329654335885, 3.637826104091601, 4.32123485812475}
Pentagonu irregolari.
3)
{300, 400, 300, 200}
{500, 600, 700, 600}
Ritorn: {299.99999999974995, 599.9999999995, 0.0, 1.107148717794088, 2.034443935795705}
Kwadru mdawwar 45 grad.
[
Utenti reġistrati biss jistgħu jipparteċipaw fl-istħarriġ.
I solvut il-problema għal
-
f'inqas minn 10 minuti
-
10-30 minuti
-
30-60 minuti
-
sigħat 1-2
-
f'aktar minn sagħtejn
-
oħra
42 utent ivvutaw. 47-il utent astjenew.
Sors: www.habr.com