Julka zaskoczyła wczoraj w przedszkolu swoją wychowawczynię rozwiązując następującą zagadkę:
Klaudia i Natalia mają razem 10 jabłek,
ale Klaudia ma o 2 jabłka więcej niż Natalia.
Ile jabłek ma każda z dziewczynek?
Julka odpowiedziała bez namysłu: Klaudia ma sześć jabłek, natomiast Natalia ma cztery jabłka.
Wychowywaczyni postanowiła sprawdzić, czy odpowiedź Julki nie była przypadkowa i powtarzała zagadkę, za każdym razem zwiększając liczby jabłek w zadaniu. Julka zawsze odpowiadała prawidłowo. Zaskoczona wychowawczyni chciała kontynuować ,,badanie'' Julki, ale przy bardzo dużych liczbach sama nie potrafiła szybko rozwiązać zagadki. Pomóż pani przedszkolance i napisz program, który będzie podpowiadał jej rozwiązania.
Napisz program, który:
Wejście składa się z dwóch wierszy. Pierwszy wiersz zawiera liczbę wszystkich jabłek posiadanych przez dziewczynki, natomiast drugi - liczbę mówiącą, o ile więcej jabłek ma Klaudia. Obie liczby są całkowite i dodatnie. Wiadomo, że dziewczynki mają razem nie więcej niż 10^100 (jedynka i sto zer) jabłek. Jak widać, jabłka mogą być bardzo malutkie.
Twój program powinien wypisać (na standardowe wyjście) w dwóch kolejnych wierszach dwie liczby całkowite, po jednej w wierszu. Pierwszy wiersz powinien zawierać liczbę jabłek Klaudii, natomiast drugi - liczbę jabłek Natalii. Wiadomo, że dziewczynki zawsze mają całe jabłka.
10
2
6
4
Contest > Algorithmic Engagements > PA 2003 2-1번
import java.math.BigInteger;
import java.util.Scanner;
public class Code8437 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
BigInteger total=sc.nextBigInteger();//10개 전체로 갖고 있음
BigInteger more=sc.nextBigInteger();//2개 더 많이 갖고 있다
BigInteger divide=new BigInteger("2");
BigInteger answer=total.subtract(more).divide(divide);
System.out.println(answer.add(more));
System.out.println(answer);
}
}
진짜 뭔말인지 몰라서 번역기를 돌렸다.
번역기 돌리는 중이 10^100
이 10100
으로 바껴서 int
로 했다가 런타임 에러
가 발생했다. 그래서 다시 번역을 풀어보니 10^100
이었다.
BigInteger
로 계산을 해주자.