问题描述:
We shall say that an n-digit number is pandigital if it makes use of all the digits 1 to n exactly once; for example, the 5-digit number, 15234, is 1 through 5 pandigital.
The product 7254 is unusual, as the identity, 39 186 = 7254, containing multiplicand, multiplier, and product is 1 through 9 pandigital.
Find the sum of all products whose multiplicand/multiplier/product identity can be written as a 1 through 9 pandigital.
HINT: Some products can be obtained in more than one way so be sure to only include it once in your sum.
解决问题:
public static void main(String[] args) {
System.out.println(sum());
int result = 0;
for (int i = 1000; i < 100000; i++) {
boolean[] matcher = new boolean[10];
Arrays.fill(matcher, false);
int middle = (int) Math.sqrt(i);
boolean ok = true;
for(int j=2; j<middle&&ok;j++){
Arrays.fill(matcher, false);
if(i%j==0){
int k = i/j;
int tmp = i;
while(tmp!=0){
if(matcher[tmp%10]==true||tmp%10==0){
ok = false;
break;
}
matcher[tmp%10] = true;
tmp = tmp/10;
}
if(ok){
tmp = j;
while(tmp!=0){
if(matcher[tmp%10]==true||tmp%10==0){
ok = false;
break;
}
matcher[tmp%10] = true;
tmp = tmp/10;
}
}
if(ok){
tmp = k;
while(tmp!=0){
if(matcher[tmp%10]==true||tmp%10==0){
ok = false;
break;
}
matcher[tmp%10] = true;
tmp = tmp/10;
}
}
if(ok){
boolean find = true;
for(int l=1; l<10; l++){
if(matcher[l]==false){
find = false;
break;
}
}
if(find ){
System.out.println("i:"+i+",j:"+j+",k:"+k);
result += i;
break;
}
}
}
ok = true;
}
}
System.out.println(result);
}
分享到:
相关推荐
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...
《模式识别》是模式识别领域的经典教材之一,深入浅出地介绍了模式识别的基本概念、理论与应用。在第二章中,通常会涵盖模式识别的基础知识,包括数据预处理、特征提取、分类算法等内容。这里提供的"pattern ...
介绍STM32CubeMX 5.0.0 STM32CubeMX是32位ARM®Cortex®STM32微控制器的图形工具。它是STMCube“计划的一部分,既可以作为独立应用程序使用,也可以作为集成开发环境(IDE)集成的Eclipse插件使用 .STM32CubeMX具有...
Question 6 (Pattern Classification, Chapter 2, Problem 32) Let p(x|ωi) ∼ N(µi,σ2I) for a two-category d-dimensional problem with P(ω1) = P(ω2) = 1 2. (a) Show that the minimum probability of ...
Bootloader是嵌入式系统中的一个重要组成部分,它在硬件启动后和操作系统运行前执行,主要任务是加载操作系统到内存并启动。在这个特定的项目中,我们关注的是针对NXP S32K144微控制器的Bootloader,该Bootloader是...
STM32 STM32F103驱动I2C_12864OLED的例程是一个基于STM32F103C8T6微控制器的项目,旨在通过I2C接口来控制12864 OLED显示屏。这个例程对于那些想要在自己的STM32项目中集成OLED显示功能的开发者来说是非常有价值的...
STM32Cube_FW_F4_V1.5.0.zip是一个包含STM32F4系列微控制器固件库的软件包,适用于在KEIL集成开发环境中进行RAM运行的程序设计。这个压缩包提供了丰富的示例代码,帮助开发者了解如何在STM32F4设备上将程序加载到RAM...
STM32CubeMX是一款由STMicroelectronics(意法半导体)推出的强大配置工具,专为STM32微控制器的初始化设置而设计。它极大地简化了基于STM32的嵌入式系统开发过程,允许开发者快速配置芯片的各种外设,并自动生成...
本篇文章将深入探讨如何在AT32F403A微控制器上移植并运行FreeRTOS。 AT32F403A是一款由雅特力科技(A特力A)推出的高性能ARM Cortex-M4内核微控制器,具有浮点运算单元(FPU)和数字信号处理器指令集,适用于各种...
| ISBN-10: 1292098813 | 848 pages | PDF | 32.65 MB Problem Solving and Program Design in C teaches introductory students to program with ANSI-C, a standardized, industrial-strength programming ...
STM32是一款基于ARM Cortex-M内核的微控制器,广泛应用于嵌入式系统设计,而FATFS(File Allocation Table File System)则是一种通用的文件系统,尤其适用于嵌入式系统,它允许STM32这样的微控制器进行读写SD卡、...
根据提供的文件信息,以下是对STM32Cube点灯实验的详细知识点梳理: STM32Cube是一套由ST官方提供的工具,旨在简化基于STM32微控制器的应用开发。本资料重点在于介绍如何使用STM32CubeMX软件来配置STM32微控制器,...
针对STM32F0 (UM1785)、STM32F1 (UM1850)、STM32F2 (UM1940)、STM32F3 (UM1786)、STM32F4 (UM1725)、STM32F7 (UM1905)、STM32L0 (UM1749)、STM32L1 (UM1816)、STM32L4/L4+ (UM1884) 和 STM32H7 (UM2217)的STM32Cube ...
标题中的“Problem with VC11”指的是在尝试安装或运行CATIA 2018时遇到了与Microsoft Visual C++ 11.x运行时库相关的错误。这个问题通常由于系统缺少VC++运行时组件或者已安装的版本与软件需求不匹配所引起。CATIA...
eclipse-jee-2021-12-R-win32-x86_64 eclipse-jee-2021-12-R-win32-x86_64 eclipse-jee-2021-12-R-win32-x86_64
该版指南取代了先前的 GA32-0923-04 版本,并包含了所有相关的法律声明和使用权信息。 内容包括了硬件和软件分发、ProtecTIER Manager 的概述、可用配置、磁盘配置,以及故障排除考虑因素。故障排除地图、解决...
STM32CubeMX是一款由STMicroelectronics(意法半导体)推出的强大的STM32微控制器配置和代码生成工具。它基于图形用户界面,使得开发者能够轻松地配置STM32芯片的各种功能,如时钟树、GPIO、ADC、DAC、UART、SPI、I2...
### WM8960_6158_FL32_M_REV1 示例配置解析 #### 概述 WM8960_6158_FL32_M_REV1_Example_Configurations.pdf 是一份由Wolfson Microelectronics plc提供的文档,旨在介绍WM8960音频编解码器在WM8960-6158-FL32-M-...
4. **查看报告**:在“Problem Views”中查看疑似内存泄漏的对象列表和其他相关信息。 5. **优化代码**:根据报告结果,定位问题,修改代码并重新测试。 五、实战案例 一个典型的使用场景是,当你的Java应用在运行...
- Virtual Box: Fixed problem packaging feature is duplicated files are found - Virtual Box: Bug fixed, Command Line options were not read in packages - Virtual Box: Fixed problem with CreateProcess ...