模拟法基础例题(Java版)
Posted 敲代码的xiaolang
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了模拟法基础例题(Java版)相关的知识,希望对你有一定的参考价值。
算式问题.
题目描述:
本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。
看这个算式:
☆☆☆ + ☆☆☆ = ☆☆☆
如果每个五角星代表 1 ~ 9 的不同的数字。这个算式有多少种可能的正确填写方法?
173 + 286 = 459
295 + 173 = 468
173 + 295 = 468
183 + 492 = 675
以上都是正确的填写法!
注意:111+222=333 是错误的填写法!因为每个数字必须是不同的!也就是说:1 ~ 9 中的所有数字,每个必须出现且仅出现一次!
注意:不包括数字 “0”。
注意:满足加法交换率的式子算两种不同的答案。 所以答案肯定是个偶数!
运行限制:
1. 最大运行时间:1s
2. 最大运行内存: 128M
public class Main
static int check(int a, int b, int c)
int flag[]=new int[11];
for(int i=0;i<10;i++)
flag[i]=0;
flag[0]=1;
while(a!=0)
if(flag[a%10]==1)
return 0;
else
flag[a%10]=1;
if(flag[b%10]==1)
return 0;
else
flag[b%10]=1 ;
if(flag[c%10]==1)
return 0;
else
flag[c%10]=1 ;
a=a/10;
b=b/10;
c=c/10;
return 1;
public static void main(String[] args)
int ans=0;
for(int a=123;a<=987;a++)
for(int b=123;b<=987-a;b++)
int c=a+b;
if(check(a,b,c)==1)
ans++;
System.out.println(a+"+"+b+"="+c);
System.out.println(ans);
//运行结果为336
提交的代码:
public class Main
public static void main(String[] args)
System.out.println(336);
题目描述:
本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。
学习了约数后,小明对于约数很好奇,他发现,给定一个正整数 t,总是可以找到含有 t 个约数的整数。小明对于含有 t 个约数的最小数非常感兴趣,并把它定义为 St。
例如 S1=1,S2=2,S3=4,S4=6,⋅⋅⋅
现在小明想知道,当 t=100 时,S100 是多少?
运行限制:
1. 最大运行时间:1s
2. 最大运行内存:128M
public class Main
public static void main(String[] args)
int i;
for(i = 1;; i++)
int count = 0;
for(int j = 1; j <= i; j++)
if(i%j==0)
count++;
if(count==100)
break;
System.out.println(i);
//运行结果:45360
提交的代码:
public class Main
public static void main(String[] args)
System.out.println(45360);
既约分数
提交的代码:
public class Main
static int gcd(int a, int b)
int temp;
while(b>0)
temp = b;
b = a % b;
a = temp;
return a;
public static void main(String[] args)
int ans=0;
for(int a=1;a<=2020;a++)
for(int b=1;b<=2020;b++)
if(gcd(a,b)==1)
ans++;
System.out.println(ans);
//结果是2481215
题目描述:
古代中国使用天干地支来记录当前的年份。
天干一共有十个,分别为:甲(jiǎ)、乙(yǐ)、丙(bǐng)、丁(dīng)、戊(wù)、己(jǐ)、庚(gēng)、辛(xīn)、壬(rén)、癸(guǐ)。
地支一共有十二个,分别为:子(zǐ)、丑(chǒu)、寅(yín)、卯(mǎo)、辰(chén)、巳(sì)、午(wǔ)、未(wèi)、申(shēn)、酉(yǒu)、戌(xū)、 亥(hài)。
将天干和地支连起来,就组成了一个天干地支的年份,例如:甲子。
2020 年是庚子年。
每过一年,天干和地支都会移动到下一个。例如 2021 年是辛丑年。
每过 60 年,天干会循环 6 轮,地支会循环 5 轮,所以天干地支纪年每 60 年轮回一次。例如 1900 年,1960 年,2020 年都是庚子年。
给定一个公元纪年的年份,请输出这一年的天干地支年份。
输入描述:
输入一行包含一个正整数,表示公元年份。
其中有 ,输入的公元年份为不超过 9999 的正整数。
输出描述:
输入一行包含一个正整数,表示公元年份。
输入输出样例:
输入
2020
输出
gengzi
运行限制
1. 最大运行时间:1s
2. 最大运行内存: 128M
import java.util.Scanner;
public class Main
static String []tg = new String []"geng", "xin", "ren", "gui", "jia", "yi" , "bing", "ding", "wu", "ji";
static String []dz = new String [] "shen", "you", "xu", "hai", "zi", "chou", "yin", "mou", "chen", "si", "wu", "wei";
public static void main(String[] args)
int year;
Scanner in =new Scanner(System.in);
year = in.nextInt();
System.out.println(tg[year%10]+""+dz[year%12]);
有问题欢迎评论区留言。
以上是关于模拟法基础例题(Java版)的主要内容,如果未能解决你的问题,请参考以下文章
2020年第十一届蓝桥杯 - 国赛 - Java大学C组 - F.天干地支