文章目录
前言
提示:以下是本篇文章正文内容,下面案例可供参考
1001
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner reader=new Scanner(System.in);
int n,m;
n=reader.nextInt();
m=reader.nextInt();
calc c=new calc();
System.out.printf("%d %d",c.gcd(n,m),(n*m)/c.gcd(n,m));
}
}
class calc{
int gcd(int a,int b) {
if(b==0) {
return a;
}
return gcd(b,a%b);
}
}
1002
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner reader=new Scanner(System.in);
while(reader.hasNext()) {
int n=0,sum=0;
n=reader.nextInt();
for(int i=1;i<=n;i++) {
int b=1;
for(int j=1;j<=i;j++) {
b*=j;
}
sum+=b;
}
System.out.println(sum);
}
}
}
1003
1.手写
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner reader=new Scanner(System.in);
while(reader.hasNext()) {
int n=10,dec=0,num=0;
calca c=new calca();
String str;
str=reader.next();
char []str1=str.toCharArray();
int []output=new int[33];
int m=reader.nextInt();
for(int i=0;i<str.length();i++) {
if(str1[i]=='-') {
System.out.printf("-");
continue;
}
dec=dec*n+c.char_to_int(str1[i]);
}
while(dec!=0) {
output[num++]=dec%m;
dec/=m;
}
for(int i=num-1;i>=0;i--) {
System.out.printf("%c",c.int_to_char(output[i]));
}
System.out.printf("\n");
}
}
}
class calca{
int char_to_int(char a){
return a>='0'&&a<='9'?a-'0':10+a-'A';
}
char int_to_char(int a){
return (char) (a<=9?a+'0':a-10+'A');
}
}
2.API
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner reader=new Scanner(System.in);
while(reader.hasNext()) {
int m=reader.nextInt();
int x=reader.nextInt();
String str1=Integer.toString(m, x);
System.out.println(str1.toUpperCase());
}
}
}
1004
代码如下(示例):
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner reader =new Scanner(System.in);
int n=reader.nextInt();
int count=0;
for(int i=1;i<=n;i++) {
int t=10,flag=0,j=i;
while(j!=0) {
if(j%10>t) {
flag=1;
}
t=j%10;
j/=10;
}
if(flag==0) {
count++;
}
}
System.out.println(count);
}
}
1005
超级楼梯
代码如下(示例):
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner reader=new Scanner(System.in);
int n=reader.nextInt();
for(int i=1;i<=n;i++) {
int f[]=new int[100000];
f[1]=1;f[2]=1;
int m=reader.nextInt();
for(int j=3;j<=m;j++) {
f[j]=f[j-1]+f[j-2];
}
System.out.println(f[m]);
}
}
}
1006
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner reader=new Scanner(System.in);
reader.useDelimiter("\n");
while(reader.hasNext()) {
String str;
int a=0,b=0,c=0,d=0;
str=reader.nextLine();
char []str1=str.toCharArray();
for(int i=0;i<str1.length;i++) {
if((str1[i]>='a'&&str1[i]<='z')||(str1[i]>='A'&&str1[i]<='Z')) {
a++;
}
else if(str1[i]>='0'&&str1[i]<='9') {
b++;
}
else if(str1[i]==' ') {
c++;
}else {
d++;
}
}
System.out.printf("%d %d %d %d\n",a,b,c,d);
}
}
}
1007
扫描二维码关注公众号,回复:
13290293 查看本文章

import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner reader=new Scanner(System.in);
int []prime=new int[100000];
int []vis=new int[100000];
int n=10000;
vis[0]=1;
vis[1]=1;
for(int i=2;i<=n;i++){
if(vis[i]==0){
vis[i]=1;
prime[++prime[0]]=i;
}
for(int j=1;j<=prime[0]&&i*prime[j]<=n;j++){
vis[i*prime[j]]=1;
if(i%prime[j]==0) break;
}
}
while(reader.hasNext()){
int x=reader.nextInt();
System.out.printf("%d\n",prime[x]);
}
}
}
1008
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner reader=new Scanner(System.in);
long n;
long []input=new long[50];
int m=0;
n=reader.nextLong();
while(n!=0){
input[m++]=n%10;
n/=10;
}
StringBuffer str=new StringBuffer();
int flag=0;
for(int i=m-1;i>=0;i--){
if(m>=9&&input[8]!=0) flag=1;
if(input[i]==0) {
if((i+1)==5) str.append("wan ");
if((i>=1&&input[i-1]!=0)) {
str.append("ling ");}
}
if(input[i]==1&&(i+1)!=10&&(i+1!=2||m>2)&&m!=6) str.append("yi ");
if(input[i]==2) str.append("er ");
if(input[i]==3) str.append("san ");
if(input[i]==4) str.append("si ");
if(input[i]==5) str.append("wu ");
if(input[i]==6) str.append("liu ");
if(input[i]==7) str.append("qi ");
if(input[i]==8) str.append("ba ");
if(input[i]==9) str.append("jiu ");
if((i+1)==2&&input[i]!=0) str.append("shi ");
if((i+1)==3&&input[i]!=0) str.append("bai ");
if((i+1)==4&&input[i]!=0) str.append("qian ");
if((i+1)==5&&input[i]!=0) str.append("wan ");
if((i+1)==6&&input[i]!=0) str.append("shi ");
if((i+1)==7&&input[i]!=0) str.append("bai ");
if((i+1)==8&&input[i]!=0) str.append("qian ");
if((i+1)==9&&input[i]!=0) str.append("yi ");
if((i+1)==10&&input[i]!=0&&flag!=1) str.append("shi yi");
if((i+1)==10&&input[i]!=0&&flag==1) str.append("shi ");
}
String str1=str.toString().trim();
System.out.println(str1);
}
}
1009
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
String m="";
for(int i=1;i<=500;i++) {
m=m+String.valueOf(i);
}
Scanner reader=new Scanner(System.in);
System.out.println(m.indexOf(reader.nextLine())+1);
}
}
1011
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner reader=new Scanner(System.in);
double m=reader.nextInt();
double n=reader.nextInt();
double x=Math.pow(Math.E,Math.log(n/m)/20)-1;
System.out.printf("%.4f",x);
}
}
1012
public BigDecimal(BigInteger unscaledVal, int scale)将未BigInteger缩放的值和int比例转换为BigDecimal.价值BigDecimal是unscaledVal/10^scale.
参数:
unscaledVal- 未缩放的价值BigDecimal.
scale- 规模BigDecimal.
import java.math.BigDecimal;
import java.math.BigInteger;
import java.math.RoundingMode;
public class Main {
public static void main(String[] args) {
BigInteger a=BigInteger.ONE;
BigInteger b=BigInteger.ONE;
for(int i=3;i<=500;i++){
BigInteger t=b;
b=a.add(b);
a=t;
}
BigDecimal divide=new BigDecimal(a,100).divide(new BigDecimal(b,100),RoundingMode.HALF_DOWN);
System.out.printf("%.80f",divide);
}
}
1013
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner reader =new Scanner(System.in);
int n=reader.nextInt();
calculate c=new calculate();
int flag=-1;
int fz=1,fm=1;
int z=1,m;
for(int i=1,j=1;i<=n&&j<=n;i++,j++) {
if(i==1&&j==1) continue;
if(i>=2) z=i-1;
m=j;
if(fm!=c.lcm(fm, m))
fz=fz*c.lcm(fm, m)/fm;
if(m!=c.lcm(fm, m))
z=z*c.lcm(fm, m)/m;
fz=fz+z*flag;
fm=c.lcm(fm, m);
m=c.lcm(fm, m);
flag=-flag;
}
System.out.printf("%d/%d",fz,fm);
}
}
class calculate{
int gcd(int a,int b) {
if(b==0) {
return a;
}
return gcd(b,a%b);
}
int lcm(int a,int b) {
return a*b/gcd(a,b);
}
}
1014
1.手写
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner reader=new Scanner(System.in);
while(reader.hasNext()) {
int year=2014,month=11,day=9;
int y_month[]= {
0,31,28,31,30,31,30,31,31,30,31,30,31};
int n=reader.nextInt();
for(int i=1;i<=n;i++) {
day++;
if((year%4==0&&year%100!=0)||(year%400==0)) {
y_month[2]=29;
}
else {
y_month[2]=28;
}
if(day>y_month[month]) {
day=1;
month++;
}
if(month>12) {
month=1;
year++;
}
}
System.out.println(String.format("%d-%2d-%2d",year,month,day).replace(" ", "0"));
}
}
}
2. 调用API
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner reader=new Scanner(System.in);
while(reader.hasNext()) {
int n=reader.nextInt();
Calendar calendar = Calendar.getInstance();
calendar.set(2014,10,9); //设置日期 其中月份在日期中保存为 0-11代表1月-12月
calendar.add(calendar.DATE,n); //由当前日期向后查询 多少天
Date date = calendar.getTime(); //将日期类转化为date类型
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); //设置格式化输出的样式 yyyy-MM-dd HH:mm:ss yyyy年MM月dd日 HH时mm分ss秒 ymdhms分别都是代表首字符,一般用M代表月,m代表分
System.out.println(sdf.format(date));
}
}
}
1015
同余定理
2个不同的整数a、b,被一个整数m相除时,得到相同的余数,那么我就可以称a、b同余。
因为a、b同余所以当他们相减时,余数就抵消掉了,剩下的那部分就是能被m整除的。
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int n = scan.nextInt();
while(n-->0){
long m = scan.nextLong();
System.out.println((471+1000*(m-1)));
}
}
}
1016
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
int n;
long count=0;
long sum=1;
Scanner reader=new Scanner(System.in);
n=reader.nextInt();
for(int i=1;i<=n;i++){
count=0;
for(int j=0;j<=9;j++){
if(i==1&&j==0||j==4) continue;
count++;
}
sum*=count;
//System.out.println(count);
}
System.out.println(sum);
}
}