猴子分桃等。。

来源:互联网 发布:ntfs for mac github 编辑:程序博客网 时间:2024/05/17 03:16

1.有一堆桃,五只猴子来分。第一只猴子把桃子分成五份拿走一份,把多出 的一个扔掉。之后的四只猴子都都这么做。求开始最少有多少桃子。第五只猴子拿到多少桃子。

public class Mo {

public static void main(String[] args) {
int n = 1;
int m = 0;
int flag = 1;
int monkey = 5;
while(true){
flag = 1;
m = monkey*n+1;
for (int i = monkey; i >=1 ; i--) {
if (m%(monkey-1)==0){
m=m/(monkey-1)*monkey+1;
flag++;
}else{
System.out.println("break");
break;
}
}
if (flag == monkey){
break;
}
n++;
}
System.out.println(m);
System.out.println(n);
}
}

矩阵的转置。实现二维数组的行列互换。

public class Matrix{
private static void zhuan(int[][] a,int n){
int[][] b = new int[n][n];
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
b[j][i] = a[i][j];
}
}
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
System.out.print(b[i][j]+" ");
}
System.out.println();
}
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
while(scanner.hasNext()){
int n = scanner.nextInt();
int[][] a = new int[n][n];
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
a[i][j] = scanner.nextInt();
}
}
zhuan(a,n);
}
}
}
九宫格,创建一个N维矩阵,要求矩阵中数字为0~N^2之间的数,且纵向、横向、斜向上的三个数字之和相等。

public class JiuGongGe {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
int h = 0;
int l = n/2;
int[][] a = new int[n][n];
for (int i = 1; i <=n*n; i++) {
a[h][l] = i;
h--;
l++;
if (h<0&&l>=n){
h++;
l--;
h++;
}else if (h<0){
h = n-1;
}else if (l>=n){
l=0;
}else if (a[h][l]>0) {
h++;
l--;
h++;
}
}
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
System.out.print(a[i][j]+" ");
}
System.out.println();
}

}
}