Ədəd
o zaman massiv ədədi adlanır ki, o a^n şəklində yazılmış olsun, bu da
a ədədinin n-ci dərəcədən
qüvvətə yüksəldilməsi deməkdir. Sizdən “<əsas>^<qüvvət>” formatında verilmiş iki ab və cd massiv
ədədlərini müqayisə etmək tələb olunur.
İki
massiv ədəddən böyüyünü vermək
lazımdır.
Giriş
verilənləri. “<əsas>^<qüvvət>” formatında
iki a
və b massiv ədədləri. Məlumdur ki, 1 ≤ <əsas>, <qüvvət> ≤ 1000.
Çıxış
verilənləri. a və b-dən
ən böyüyü.
Giriş verilənlərinə
nümunə
3^100 2^150
Çıxış
verilənlərinə nümunə
3^100
riyaziyyat
Alqoritmin analizi
ab < cd bərabərsizliyini
loqarifləyək. b lg a < d lg c alacağıq. b lg a və d lg c ifadələrinin
qiyməti double tipinə
daxildir, buna görə
də onları müqayisə etmək çətin deyil.
Alqoritmin reallaşdırılması
Hər bir
ədədin əsasını və qüvvətini
ayıraraq giriş verilənlərini oxuyuruq.
scanf("%d^%d %d^%d",&a,&b,&c,&d);
Loqarifmlənmiş b lg a
və d lg c ifadələrini
müqayisə edirik, nəticədə cavabı veririk.
if (b * log(1.0 * a) < d * log(1.0
* c)) printf("%d^%d\n",c,d);
else printf("%d^%d\n",a,b);
Java reallaşdırılması
import java.util.*;
public class Main
{
public static void main(String[] args)
{
Scanner con = new
Scanner(System.in);
String s = con.nextLine();
StringTokenizer st = new StringTokenizer(s," ^");
int a = Integer.valueOf(st.nextToken()),
b = Integer.valueOf(st.nextToken()),
c = Integer.valueOf(st.nextToken()),
d = Integer.valueOf(st.nextToken());
if(b * Math.log(a) > d * Math.log(c)) System.out.println(a + "^" +
b);
else System.out.println(c + "^" + d);
}
}