November 23, 2020
Uzın arifmetika
Másele:
N sanı berilgen. N sanınıń cifrlarınıń qosındısın anıqlawshı programma dúziń (1<N<=10^5000).
Sheshiliwi:
Eger 1<N<=10^5000 shártti esapqa almasaq, másele ańsat sheshiledi, máseleniń qıyınshılıǵıda usı diapazonǵa sıymaytuǵın sanda…
Másele shártinde diapazonǵa sıymaytuǵın san barma, onda Sizdiń aldıńızda 2 jol bar:
- Massivten paydalanıw
- Qatardan paydalanıw
Joqarıdaǵı máseleni qatardan paydalanıp sheshken qolaylı hám effektiv boladı.
- Dáslep N qatarın kiritemiz;
- S=0 ózgeriwshisi, qosındını esaplap barıw ushın;
- N qatardıń hárbir simvolın (bul sol sannıń cifrları esaplanadı) dáslep sanǵa aylandıramız, keyin S ózgeriwshisine qosıp baramız. Bul process N qatardıń barlıq simvolların bolaman degenshe dawam etedi.
Demek, biz qatardı tolıǵı menen emes, al bir simvolın pútin tipke aylandırıp, ol ústinde matematikalıq ámel orınladıq.
Javada kod tómendegishe boladı:
Siz bunnanda jaqsı, effektiv algoritm dúze alsańız, bizge xabar beriń
Baylanıs ushın: A.Orınbaev