java实现猜算式
题目:猜算式
你一定还记得小学学习过的乘法计算过程,比如:
x 15
------
273
------
请你观察如下的乘法算式
***
x ***
--------
***
***
***
--------
*****
星号代表某位数字,注意这些星号中,
0~9中的每个数字都恰好用了2次。
(如因字体而产生对齐问题,请参看图p1.jpg)
请写出这个式子最终计算的结果,就是那个5位数是多少?
注意:只需要填写一个整数,不要填写任何多余的内容。比如说明文字。
import java.util.ArrayList;
import java.util.Collections;
public class Main {
public boolean judge(int temp1, int temp2, int temp3, int temp4, int temp5, int temp6) {
ArrayList<Integer> list = new ArrayList<Integer>();
while(temp1 > 0) {
list.add(temp1 % 10);
temp1 = temp1 / 10;
}
while(temp2 > 0) {
list.add(temp2 % 10);
temp2 = temp2 / 10;
}
while(temp3 > 0) {
list.add(temp3 % 10);
temp3 = temp3 / 10;
}
while(temp4 > 0) {
list.add(temp4 % 10);
temp4 = temp4 / 10;
}
while(temp5 > 0) {
list.add(temp5 % 10);
temp5 = temp5 / 10;
}
while(temp6 > 0) {
list.add(temp6 % 10);
temp6 = temp6 / 10;
}
Collections.sort(list);
if(list.size() == 20) {
int j = 0;
for(int i = 0;i < 20;i = i + 2, j++) {
if(list.get(i) == j && list.get(i + 1) == j)
continue;
else
return false;
}
if(j == 10)
return true;
}
return false;
}
public boolean judge1(int n) {
if(n >= 1000 || n < 100)
return false;
return true;
}
public void printResult() {
for(int i = 100;i <= 999;i++) {
int temp1 = i;
for(int j = 100;j <= 999;j++) {
int temp2 = j;
int temp3 = temp2 % 10 * temp1;
int temp4 = temp2 / 10 % 10 * temp1;
int temp5 = temp2 / 100 * temp1;
int temp6 = temp2 * temp1;
if(judge1(temp3) && judge1(temp4) && judge1(temp5) && temp6 > 9999 && temp6 < 100000) {
if(judge(temp1, temp2, temp3, temp4, temp5, temp6)) {
System.out.println("temp1 = "+temp1+", temp2 = "+temp2+", temp6 = "+temp6);
}
} else {
continue;
}
}
}
}
public static void main(String[] args) {
Main test = new Main();
test.printResult();
}
}
java实现猜算式的更多相关文章
- Java实现 蓝桥杯 猜算式
猜算式 看下面的算式: □□ x □□ = □□ x □□□ 它表示:两个两位数相乘等于一个两位数乘以一个三位数. 如果没有限定条件,这样的例子很多. 但目前的限定是:这9个方块,表示1~9的9个数字 ...
- C语言 · 猜算式 · 乘法竖式
题目:猜算式 你一定还记得小学学习过的乘法计算过程,比如: 273 x 15 ------ 1365 273 ------ 4095 请你观察如下的乘法算式 *** x *** ------- ...
- C语言 · 猜算式
题目:猜算式 看下面的算式: □□ x □□ = □□ x □□□ 它表示:两个两位数相乘等于一个两位数乘以一个三位数. 如果没有限定条件,这样的例子很多. 但目前的限定是:这9个方块,表示1~9的9 ...
- YTU 2750: 猜算式
2750: 猜算式 时间限制: 1 Sec 内存限制: 128 MB Special Judge 提交: 22 解决: 1 题目描述 看下面的算式: □□ x □□ = □□ x □□□ 它表示 ...
- 算法笔记_220:猜算式(Java)
目录 1 问题描述 2 解决方案 1 问题描述 看下面的算式: □□ x □□ = □□ x □□□ 它表示:两个两位数相乘等于一个两位数乘以一个 三位数. 如果没有限定条件,这样的例子很多. 但 ...
- 初识Java,猜字游戏
import java.util.*; public class caizi{ public static void main(String[] args){ Scanner in=new Scann ...
- Java实现猜字母游戏
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAABRQAAAE9CAYAAAB6Cu4FAAAgAElEQVR4nOy995OUR77u2f/H3tjdey ...
- Java实现猜数字,附带提示功能。
很简单的一段代码: package com.changeyd.demo; import java.util.Random;import java.util.Scanner;public class M ...
- java & python猜数字游戏对比
1.java版 package day03; import java.util.Random;import java.util.Scanner; /** * 猜数字游戏 * 随机生成一个1-100之间 ...
随机推荐
- 设计模式系列之适配器模式(Adapter Pattern)——不兼容结构的协调
模式概述 模式定义 模式结构图 模式伪代码 类适配器,双向适配器,缺省适配器 类适配器 双向适配器 缺省适配器 模式应用 模式在JDK中的应用 模式在开源项目中的应用 模式总结 主要优点 主要缺点 适 ...
- AVPlayer的使用+简单的播放器Demo
学习内容 AVPlayer学习 几个播放器相关的类 AVPlayer.AVURLAsset.AVPlayerItem.AVPlayerLayer //控制播放器的播放.暂停.播放速度 @propert ...
- python 调用ldap同步密码
windows + python2.7 安装 python-ldap https://www.lfd.uci.edu/~gohlke/pythonlibs/#python-ldap 2.python ...
- nexus 启用ldap认证
使用自己搭建的openldap 使用用户中心的openldap 修改完后,重启服务 # cd /opt/sonarqube-6.7.3/bin/linux-x86-64/ && ./s ...
- React组件proptypes, ref
一.使用props.children访问嵌套数据 import React from 'react'; class Button extends React.Component { render () ...
- flask之Flask、config配置
flask_config.py ''' flask的配置: 1.flask项目初始化配置: (1)app=Flask(__name__)#初始化声明falsk项目为当前py文件,app应用变量名可以更 ...
- React安装及使用
学习React之前.你可能需要学习: Html5.Css3.React.Antd.js. Html5的学习网站:http://www.w3school.com.cn/ Css3学习网站:http:// ...
- 架构设计 | 接口幂等性原则,防重复提交Token管理
本文源码:GitHub·点这里 || GitEE·点这里 一.幂等性概念 1.幂等简介 编程中一个幂等操作的特点是其任意多次执行所产生的影响均与一次执行的影响相同.就是说,一次和多次请求某一个资源会产 ...
- 201771010128王玉兰《面向对象程序设计(Java)》第十三周学习总结
第一部分:基础理论知识 1.事件处理基础 事件源(event source):能够产生事件的对象都可 以成为事件源,如文本框.按钮等.一个事件源是一个 能够注册监听器并向监听器发送事件对象的对象. 事 ...
- 两圆相交求面积 hdu5120
转载 两圆相交分如下集中情况:相离.相切.相交.包含. 设两圆圆心分别是O1和O2,半径分别是r1和r2,设d为两圆心距离.又因为两圆有大有小,我们设较小的圆是O1. 相离相切的面积为零,代码如下: ...