Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.io.BufferedWriter;
- import java.io.File;
- import java.io.FileWriter;
- import java.io.IOException;
- import java.io.PrintWriter;
- import java.util.Calendar;
- import java.util.Scanner;
- public class TinhGiaiThua1 {
- public static void main(String[] args) {
- File file = new File("KETQUA2.txt");
- try (FileWriter fw = new FileWriter(file, true);
- BufferedWriter bf = new BufferedWriter(fw);
- PrintWriter pw = new PrintWriter(file)) {
- Scanner scanner = new Scanner(System.in);
- System.out.println("Nhap so can tinh giai thua: ");
- int n = scanner.nextInt();
- long timeBegin = Calendar.getInstance().getTimeInMillis();
- String x = giaithua(n);
- long timeEnd = Calendar.getInstance().getTimeInMillis();
- pw.println("Thoi gian thuc hien : "+(timeEnd - timeBegin));
- pw.println("Ket qua :" + x);
- } catch (IOException e) {
- // TODO: handle exception
- }
- }
- public static String giaithua(int n) {
- String sb = "" ;
- int[] A = new int[500000];
- int m = 1;
- long r = 0;
- long q;
- A[0] = 1;
- for (int i = 2; i <= n; i++) {
- for (int j = 0; j < m; j++) {
- q = r;
- r = (A[j] * i + r) / 10;
- A[j] = (int) ((A[j] * i + q) % 10);
- }
- while (r > 0) {
- A[m] = (int) (r % 10);
- m++;
- r = r / 10;
- }
- }
- for (int i = m - 1; i >= 0; i--) {
- sb += A[i];
- }
- return sb;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement