问题描述:
Find the greatest product of five consecutive digits in the 1000-digit number.
73167176531330624919225119674426574742355349194934
96983520312774506326239578318016984801869478851843
85861560789112949495459501737958331952853208805511
12540698747158523863050715693290963295227443043557
66896648950445244523161731856403098711121722383113
62229893423380308135336276614282806444486645238749
30358907296290491560440772390713810515859307960866
70172427121883998797908792274921901699720888093776
65727333001053367881220235421809751254540594752243
52584907711670556013604839586446706324415722155397
53697817977846174064955149290862569321978468622482
83972241375657056057490261407972968652414535100474
82166370484403199890008895243450658541227588666881
16427171479924442928230863465674813919123162824586
17866458359124566529476545682848912883142607690042
24219022671055626321111109370544217506941658960408
07198403850962455444362981230987879927244284909188
84580156166097919133875499200524063689912560717606
05886116467109405077541002256983155200055935729725
71636269561882670428252483600823257530420752963450
找到连续的五个数相乘的最大数。
执行的结果:
40824 count_for1:4975
40824 count_for2:2495
为了提高效率,遇到0,可以向后滑动!
public static int count_for1 = 0;
public static int count_for2 = 0;
public static String read(){
StringBuffer s = new StringBuffer();
try {
BufferedReader br = new BufferedReader(new FileReader("f:/1.txt"));
String line ;
while((line=br.readLine())!=null){
s.append(line);
}
} catch (FileNotFoundException e) {
} catch (Exception e){
}
return s.toString();
}
public static int find_five_consecutive1(){
int result = 1;
int max = 0;
String str = read();
int begin = 0;
int end = str.length();
int step = 5;
for(int i=begin; i<end-step; i++){
result = 1;
for(int j=0 ;j<step ;j++){
result = result*Integer.parseInt(str.charAt(i+j)+"");
count_for1++;
}
if(result>max){
max = result;
}
}
return max;
}
public static int find_five_consecutive2(){
int result = 1;
int max = 0;
String str = read();
int begin = 0;
int end = str.length();
int step = 5;
for(int i=begin; i<end-step; i++){
result = 1;
for(int j=0 ;j<step ;j++){
if(str.charAt(i+j)=='0'){
i = i + step + step - j;
break;
}else{
int number = Integer.parseInt(str.charAt(i+j)+"");
result = result*number;
count_for2++;
}
}
if(result>max){
max = result;
}
}
return max;
}
分享到:
相关推荐
8. MRBT related problem 7 9. USSD related problem 7 10. Announcement problem 7 11. Echo canceller (ECP) problem 8 12. DTI problem 8 13. Group Switch problem 8 14. IN problem 9 15. ONE WAY SPEECH 9 16...
Chapter 8. Using Computers to Solve Problems Part 3 Software Tools Supporting Program Execution Chapter 9. Computer Process Manipulation by Programs Chapter 10. Memory Management System Chapter 11. I...
Problem Solving with C++, Global Edition by Walter Savitch (author) (Author) Pages:1117 出版社: Pearson Education Limited; 10th edition edition (November 20, 2017) Language: English ISBN-10: ...
### Wicked Problem与Wicked Environmental Problem #### 一、引言 "Wicked Problem"(棘手问题)这一概念最初由霍恩(Horst Rittel)和韦伯(Melvin Webber)于1973年提出,指的是那些复杂且难以解决的问题。这类...
node-problem-detector 镜像包 v0.8.7 版本
MCM 2012年 problem A problem B problem C 枪手论文
8. 查找表结构:DESC 语句(Problem 8) DESC 语句用于显示表的结构信息,例如 DESC emp; 9. 获取最后一句 SELECT 查询到的总行数:FOUND_ROWS() 函数(Problem 9) FOUND_ROWS() 函数用于获取最后一句 SELECT ...
Problem Arrangement zoj 3777
标题 "problem" 提供的信息较少,但从描述中的 "NULL 博文链接:https://eric0000.iteye.com/blog/322311" 可以推测,这可能是一个关于解决某个问题或者技术讨论的博客文章链接。由于没有具体的博文内容,我们无法...
Problem Solving with C++(9th) 英文无水印pdf 第9版 pdf所有页面使用FoxitReader和PDF-XChangeViewer测试都可以打开 本资源转载自网络,如有侵权,请联系上传者或csdn删除 本资源转载自网络,如有侵权,请...
算法设计里关于taxi problem的C语言代码
**Problem 8**:问题涉及到数据预处理,可能是在处理某些特定分布的数据,比如均匀分布,通过转换使其适应某种算法。 **Problem 9**:提到的正确率和错误预测可能与分类算法的性能评估相关,如二分类问题中的真正例...
"Problem_C_Data.zip" 是一个压缩包文件,包含2020年美国数学建模竞赛(简称美赛)C题的题目及相应的原始数据。美赛是一项国际性的数学建模竞赛,每年吸引众多学生参与,旨在提升参赛者的数学、数据分析和解决实际...
HDOJ Problem 1001 C++版
在这个特定的问题“master page search problem”中,我们可能遇到的是在使用Master Page时搜索功能出现的问题。ViewData是ASP.NET MVC框架中的一个特性,用于在控制器和视图之间传递数据,而JavaScript则是客户端...
在操作系统课程中,"机器问题"(Machine Problem)通常指的是与计算机硬件、系统架构以及操作系统内核相关的复杂问题。这些问题涉及到资源管理、并发控制、进程调度、内存分配等多个核心概念,是理解操作系统工作...
8. **Problem 8: 最大数字乘积** - 知识点:字符串处理,数组操作,乘法运算。 - 解决方法:将数字字符串分隔成数组,然后寻找四个数字的最大乘积。 9. **Problem 9: Pythagorean triplet** - 知识点:勾股定理...
flow shop problem GA算法 详细代码标注
**Problem Statement:** Determine the behavior of the function \(f(x) = \frac{x^3 + 8x^2 - 4}{x^2 - 4}\) as \(x \rightarrow 2\). - **Concepts Involved:** Limits, vertical asymptotes. - **Solution ...
Approaching (Almost) Any Machine Learning Problem是一本旨在帮助读者掌握机器学习问题解决方法的书籍。这本书涵盖了机器学习的基本概念、模型选择、数据预处理、特征工程、模型评估等多方面的知识点。 机器学习...