第一部分学习

1:输入一个整数,将这个整数以字符串的形式逆序输出,程序不考虑负数的情况,若数字含有0,则逆序形式也含有0,如输入为100,则输出为001

编程:

import java.util.*;

public class Main{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        int num = sc.nextInt();
        
        String str = Integer.toString(num);
        StringBuilder sb = new StringBuilder(str);
        
        sb = sb.reverse();
        String sr = sb.toString();
        System.out.println(sr);
    }
}

2:接受一个只包含小写字母的字符串,然后输出该字符串反转后的字符串。(字符串长度不超过1000)

import java.util.*;
public class Main{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        String str = sc.next();
        
        StringBuilder st = new StringBuilder(str);
        st = st.reverse();
        System.out.println(st);
    }
}

3:有这样一道智力题:“某商店规定:三个空汽水瓶可以换一瓶汽水。小张手上有十个空汽水瓶,她最多可以换多少瓶汽水喝?”答案是5瓶,方法如下:先用9个空瓶子换3瓶汽水,喝掉3瓶满的,喝完以后4个空瓶子,用3个再换一瓶,喝掉这瓶满的,这时候剩2个空瓶子。然后你让老板先借给你一瓶汽水,喝掉这瓶满的,喝完以后用3个空瓶子换一瓶满的还给老板。如果小张手上有n个空汽水瓶,最多可以换多少瓶汽水喝?

import java.util.*;

public class Main {
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        while(sc.hasNextInt()){
            int n = sc.nextInt();
            if(n==0)break;
            System.out.println(n/2);
        }
  
    }

}

1.这道题的思路很好,3个瓶子可以换1瓶,也就意味着可以用总瓶子除以2;

2.JAVA中的.hasNext()是用来判断接收的是否为数字,如果接到的是字符,不执行下一步

4:有一只兔子,从出生后第3个月起每个月都生一只兔子,小兔子长到第三个月后每个月又生一只兔子,假如兔子都不死,问每个月的兔子总数为多少?

import java.util.*;

public class Main {
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        while(sc.hasNextInt()){
            int n = sc.nextInt();
            int a = 1,b = 1;
            
            for(int i = 1;i < n; i++){
                int sum = a+b;
                a = b;
                b = sum;
            }
            System.out.println(a);
        }

}
}

1)斐波那契数列的求解方法

5:以上三角形的数阵,第一行只有一个数1,以下每行的每个数,是恰好是它上面的数,左上角数到右上角的数,3个数之和(如果不存在某个数,认为该数就是0)。

求第n行第一个偶数出现的位置。如果没有偶数,则输出-1。例如输入3,则输出2,输入4则输出3。

输入n(n <= 1000000000)

本题有多组输入数据,输入到文件末尾,请使用while(cin>>)等方式读入

import java.util.*;

public class Main {
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        while(sc.hasNextInt()){
            int n = sc.nextInt();
            if (n==1 | n==2){
                System.out.println(-1);
                continue;
            }
            int num = n%2;
            int res = 0;
            if(num != 0){
                res = 2;
            }else {
                if(n % 4 ==0){
                    res = 3;
                }else if(n % 4 ==2){
                    res = 4;
                }
            }
            System.out.println(res);
        }
    }
}

1)需要找出这个式子的数学关系;

2)可以看出,从第三行开始,奇数行中的第一个偶数都是在第2个出现,在偶数行分情况,如果该行数除以4=0,那么在第3位出现,如果该行数除以4余2,那么在第4位出现。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值