HDU5912模拟
来源:互联网 发布:lcd1602读取数据 编辑:程序博客网 时间:2024/06/15 06:10
![](http://acm.hdu.edu.cn/data/images/C728-1002-1.jpg)
The second line contains n integers:
The third line contains n integers:
C语言课后习题
import java.io.BufferedInputStream;import java.io.BufferedReader;import java.io.InputStream;import java.io.InputStreamReader;import java.io.PrintWriter;import java.math.BigInteger;import java.util.Scanner;import java.util.StringTokenizer;public class Main { public static void main(String[] args) { new Task().solve(); ; }}class Task{ Scanner in = new Scanner(new BufferedInputStream(System.in)) ;PrintWriter out = new PrintWriter(System.out) ;void solve(){int t = in.nextInt() ;for(int ca = 1 ; ca <= t ; ca++){int n = in.nextInt() ;BigInteger[] a = new BigInteger[n+1] ;BigInteger[] b = new BigInteger[n+1] ;for(int i = 1 ; i <= n ; i++) a[i] = in.nextBigInteger() ;for(int i = 1 ; i <= n ; i++) b[i] = in.nextBigInteger() ;BigF tm = new BigF(b[n] , a[n]) ;for(int i = n-1 ; i >= 1 ; i--){tm = new BigF(a[i]).add(tm) ;tm = new BigF(b[i] , tm) ;}out.println("Case #" + ca + ": " + tm.zi + " " + tm.mu) ;}out.flush() ; }class BigF{BigInteger mu , zi ;BigF(BigInteger zi , BigInteger mu){ BigInteger g = mu.gcd(zi) ;mu = mu.divide(g) ;zi = zi.divide(g) ; this.mu = mu ; this.zi = zi ;}BigF(BigInteger zi , BigF mu){this.mu = mu.zi ;this.zi = zi.multiply(mu.mu) ;BigInteger g = this.mu.gcd(this.zi) ;this.mu = this.mu.divide(g) ;this.zi = this.zi.divide(g) ;}BigF(BigInteger zi){ this.zi = zi ; this.mu = BigInteger.ONE ;}BigF(){}BigF add(BigF o){BigF res = new BigF() ;res.mu = this.mu.multiply(o.mu) ;res.zi = this.zi.multiply(o.mu) .add( o.zi.multiply(this.mu) ) ;BigInteger g = res.mu.gcd(res.zi) ;res.mu = res.mu.divide(g) ;res.zi = res.zi.divide(g) ;return res ;}} } class InputReader { public BufferedReader reader; public StringTokenizer tokenizer; public InputReader(InputStream stream) { reader = new BufferedReader(new InputStreamReader(stream), 32768); tokenizer = new StringTokenizer(""); } private void eat(String s) { tokenizer = new StringTokenizer(s); } public String nextLine() { try { return reader.readLine(); } catch (Exception e) { return null; } } public boolean hasNext() { while (!tokenizer.hasMoreTokens()) { String s = nextLine(); if (s == null) return false; eat(s); } return true; } public String next() { hasNext(); return tokenizer.nextToken(); } public int nextInt() { return Integer.parseInt(next()); } public long nextLong() { return Long.parseLong(next()); } public double nextDouble() { return Double.parseDouble(next()); } public BigInteger nextBigInteger() { return new BigInteger(next()); } }
0 0
- HDU5912模拟
- HDU5912 Fraction(模拟)
- HDU5912-Fraction
- hdu5914&hdu5912
- HDU5912 Fraction
- HDU5912-Fraction
- HDU5912 Fraction
- hdu5912 Fraction
- hdu5912 简单公式迭代
- CCPC 2016 长春赛区 hdu5912
- 模拟
- 模拟
- 模拟
- 模拟
- 模拟
- 模拟
- 模拟
- 模拟
- Eclipse中的buildpath详解
- 15、Spring MVC 之 Handling exceptions
- 如何正确的给ViewGroup设置OnClickListener
- JSP不支持EL表达式的解决方案
- linux cpuset
- HDU5912模拟
- java内存泄漏
- openssl之EVP函数
- java注解
- 请写下你的烦恼——读《解忧杂货店》有感
- 典型的互联网公司办公区信息点图
- AngularJs路由、模块、依赖注入案例
- 人脸重建源码
- ThreadLocal