- 浏览: 37036 次
- 性别:
- 来自: 杭州
最新评论
package com.yao.shuimu.euler; import java.util.ArrayList; import java.util.List; /** * Created by IntelliJ IDEA. * User: shuimuqinghua77 * Date: 11-12-15 * Time: 下午1:25 */ public class Problem20 { public static void main(String[] args) throws Exception { byte[] result = digit(1); for (byte i = 1; i <= 100; i++) { result = multiply(digit(i), result); } int sum = 0; for (byte digit : result) { sum += digit; } System.out.println(sum); } private static byte[] multiply(byte[] multiplicand/**被乘数**/, byte[] multiplier) throws Exception { if (multiplicand.length == 0 || multiplier.length == 0) { throw new Exception("被乘数/乘数为空!!!"); } if (multiplicand.length < multiplier.length) { byte[] temp = multiplier; multiplier = multiplicand; multiplicand = temp; } byte[] result = new byte[multiplicand.length + multiplier.length]; for (int i = 0; i < multiplier.length; i++) { for (int j = 0; j < multiplicand.length; j++) { result[i + j] += (byte) (multiplier[i] * multiplicand[j]); } /**[29]->[9][2]进位**/ carry(result, 1 + multiplicand.length, i); } if (result[result.length - 1] == 0) { byte[] resultDest = new byte[result.length - 1]; System.arraycopy(result, 0, resultDest, 0, result.length - 1); return resultDest; } return result; } private static void carry(byte[] result, int length, int base) { for (int i = base; i < length + base; i++) { byte decade = (byte) (result[i] / 10); if (decade >= 1) { result[i + 1] += decade; result[i] = (byte) (result[i] % 10); } } } private static byte[] digit(int original) { List<Byte> list = new ArrayList<Byte>(); do { list.add((byte) (original % 10)); original = original / 10; } while (original > 0); byte[] digit = new byte[list.size()]; for (int i = 0; i < list.size(); i++) { digit[i] = list.get(i); } return digit; } }
发表评论
-
Problem26
2013-02-06 17:08 870A unit fraction contains 1 in t ... -
Problem25
2012-04-26 16:33 887package com.yao.Algorithms; ... -
Problem24
2012-04-26 14:12 787package com.yao.Algorithms; ... -
Problem23
2012-03-18 13:29 906A perfect number is a number fo ... -
Problem22
2012-03-17 23:13 774Using names.txt (right click an ... -
Problem21
2012-03-11 20:44 1209Problem 21 05 July 2002 Let ... -
Problem19
2011-12-09 14:07 720package com.shui.mu.yao.io.algo ... -
Problem18/Problem67
2011-12-04 20:20 900package com.yao.Algorithms; ... -
Problem16
2011-12-02 15:32 423package com.shui.mu.yao.io.algo ... -
Problem15
2011-11-29 23:28 538package com.yao.Algorithms; ... -
Problem14
2011-11-29 11:37 712package com.shui.mu.yao.io.algo ... -
Problem13_1
2011-11-21 14:07 593package yao.taobao.jj; publi ... -
Problem13
2011-11-19 23:51 572package com.yao.Algorithms; ... -
Problem12
2011-11-07 20:04 714package com.shui.mu.yao.io.algo ... -
Problem11
2011-11-06 19:38 1202package com.yao.Algorithms; ... -
Problem10
2011-11-03 20:14 417package com.shui.mu.yao.io.algo ... -
Problem9
2011-11-03 16:04 753package com.shui.mu.yao.io.algo ... -
Problem8
2011-11-03 12:38 594package com.shui.mu.yao.io.algo ... -
Problem7
2011-11-03 11:25 461package com.shui.mu.yao.io.algo ...
相关推荐
Computer Networking: A Top-Down Approach, 6th Edition Solutions to Review Questions and Problems Version Date: May 2012 ...This document contains the solutions to review questions ...Problem 1 There...
20. 实体完整性:设置外键(Problem 20) 设置外键是一种实现实体完整性的方法。 21. 删除视图:DROP VIEW 语句(Problem 21) DROP VIEW 语句用于删除一个视图。 22. 修改表结构:ALTER TABLE 语句(Problem 22...
Title: Computer-Based Problem Solving Process ...Chapter 20. Timing Program Execution Chapter 21. Efficiency of Batch Operating Systems Chapter 22. Convenience of the BOS Chapter 23. Real-Time Systems
10th edition edition (November 20, 2017) Language: English ISBN-10: 1292222824 ISBN-13: 9781292222820 For courses in C++ introductory programming. Learn the fundamentals of C++ programming with an ...
美赛20年C题可能涉及的主题广泛,可能是自然科学、社会科学、工程或经济学等领域的实际问题。题目通常会给出一些背景信息,并提出一个开放性的问题,要求参赛团队运用数学模型来解决。在这个压缩包中,"Problem_C_...
- **编译Java程序**: 第20页提到编译过程,这是Java程序开发中的基础步骤,涉及到将源代码转换成可执行文件。 - **编写算法**: 在第25页提到了算法的概念,算法是解决问题的精确步骤,编程的核心就是将算法转化为...
有效的括号"可能会被命名为"有效括号.py"或"problem20.py"。 基于以上信息,我们可以推测这个压缩包可能包含以下知识点: 1. **基础数据结构**:如数组、链表、栈、队列、树(二叉树、平衡树)、图等,这些都是...
20 20 22 根据题目描述,我们可以采用数据结构如并查集或者二维四向链接来处理矩形的合并与周长计算。首先,我们需要记录每个矩形的信息,然后根据矩形的覆盖情况更新黑色区域的周长。每次增加一个矩形时,需要检查...
19. 解决问题:solve a problem 20. 一个讲英语的国家:an English-speaking country **Unit 3 Travel Journal** 1. 梦想做某事:dream of doing sth. 2. 毕业于(某大学):graduate from 3. 说服某人做某事:...
### Prime Ring Problem 深度探索 #### 问题背景与定义 在计算机科学与算法竞赛领域,特别是ACM比赛中,经常会出现一类与数学紧密结合的问题,其中“Prime Ring Problem”(简称PRP)就是一个典型例子。该问题的...
20. **一个讲英语的国家** - an English-speaking country 而在Unit 3 Travel Journal中,我们接触了旅行和日记相关的词汇: 1. **梦想做某事** - dream of doing something 2. **毕业于〔某大学〕** - graduate ...
在Project Euler的问题集中,问题5要求我们找到能被1至20所有数字整除的最小正整数。这个问题实际上是在寻找这组数字的最小公倍数(LCM)。对于较小的参数值,如本例中的k=20,可以不借助编程手段直接计算出结果。...
Title: Problem Solving in Data Structures & ...CHAPTER 20: BACKTRACKING AND BRANCH-AND-BOUND CHAPTER 21: COMPLEXITY THEORY AND NP COMPLETENESS CHAPTER 22: INTERVIEW STRATEGY CHAPTER 23: SYSTEM DESIGN
### 子数组最大和问题(Maximal Contiguous Subsequent Sum Problem) #### 一、问题定义与背景 在计算机科学领域,子数组最大和问题(Maximal Contiguous Subsequent Sum Problem)是一个经典的问题,旨在从一个...
第一行是测试数据的数目t(0 <= t <= 20)。以下每行均包含二个整数M和N,以空格分开。1,N。 Output 对输入的每组数据M和N,用一行输出相应的K。 Sample Input 1 7 3 Sample Output 8