#8991: JAVA TLE 有方法優化?


alextsui2014 (unknown)

學校 : 不指定學校
編號 : 41821
來源 : [116.49.192.70]
最後登入時間 :
2014-07-06 22:24:14
a248. 新手訓練 ~ 陣列應用 -- 新手訓練系列 ~ 2 | From: [116.49.186.76] | 發表日期 : 2014-07-12 19:07

import java.util.Scanner;
class a248{
 public static void main(String args[]){
  Scanner scanner = new Scanner(System.in);
  while(scanner.hasNext()){
   int number1 = scanner.nextInt(),number2 = scanner.nextInt(),precise = scanner.nextInt();
   if(precise == 0){
    System.out.println(number1 / number2);
   }else if(number1 % number2 == 0 && precise > 0){
    System.out.print(number1 / number2+".");
    for(int time = 0;time < precise;time++){
     System.out.print("0");
    }
    System.out.println();
   }else{
    System.out.print(number1 / number2+".");
    int remainder = number1 % number2;
    for(int time = 0;time < precise;time++){
     remainder *= 10;
     System.out.print(remainder / number2);
     remainder = remainder % number2;
    }
    System.out.println();
   }
   
  }
 }
#9004: Re:JAVA TLE 有方法優化?


tomoyaken14 (歐練)

學校 : 不指定學校
編號 : 6922
來源 : [122.117.127.202]
最後登入時間 :
2024-04-15 14:31:55
a248. 新手訓練 ~ 陣列應用 -- 新手訓練系列 ~ 2 | From: [140.117.70.221] | 發表日期 : 2014-07-15 14:31

可以想想看有什麼更快的演算法來優化 :) 
#9227: Re:JAVA TLE 有方法優化?


ak5612599 (魂o小草)

學校 : 明新科技大學
編號 : 35696
來源 : [175.98.144.194]
最後登入時間 :
2023-02-24 11:16:37
a248. 新手訓練 ~ 陣列應用 -- 新手訓練系列 ~ 2 | From: [120.105.96.200] | 發表日期 : 2014-09-22 18:55

可以想想看有什麼更快的演算法來優化 :) 

 System.out.print() 這個方法很慢喔!

可以 在 String 中+=   算完以後再System.out.println();

若是想要更快的話。可以學遺下StringBuffer的用法

StringBuffer比String 快上好幾倍喔!! 

 
ZeroJudge Forum