【Java】『蓝桥杯』10道编程题及答案(五)

news2024/11/25 16:51:54

系列文章

【Java】『蓝桥杯』10道编程题及答案(一)
本文链接:https://blog.csdn.net/youcheng_ge/article/details/130223115

【Java】『蓝桥杯』10道编程题及答案(二)
本文链接:https://blog.csdn.net/youcheng_ge/article/details/130304773

【Java】『蓝桥杯』10道编程题及答案(三)
本文链接:https://blog.csdn.net/youcheng_ge/article/details/130305068

【Java】『蓝桥杯』10道编程题及答案(四)
本文链接:https://blog.csdn.net/youcheng_ge/article/details/130392388

【Java】『蓝桥杯』10道编程题及答案(五)
本文链接:https://blog.csdn.net/youcheng_ge/article/details/130444113


文章目录

  • 系列文章
  • 前言
  • 一、题目
    • 1.1 【程序1】
    • 1.2 【程序2】
    • 1.3 【程序3】
    • 1.4 【程序4】
    • 1.5 【程序5】
    • 1.6 【程序6】
    • 1.7 【程序7】
    • 1.8 【程序8】
    • 1.9 【程序9】
    • 1.10 【程序10】
  • 二、答案
    • 2.1 【程序1】
    • 2.2 【程序2】
    • 2.3 【程序3】
    • 2.4 【程序4】
    • 2.5 【程序5】
    • 2.6 【程序6】
    • 2.7 【程序7】
    • 2.8 【程序8】
    • 2.9 【程序9】
    • 2.10 【程序10】


前言

我能抽象出整个世界,但是我不能抽象你。 想让你成为私有常量,这样外部函数就无法访问你。 又想让你成为全局常量,这样在我的整个生命周期都可以调用你。 可惜世上没有这样的常量,我也无法定义你,因为你在我心中是那么的具体。

哈喽大家好,本专栏为【Java】专栏,『蓝桥杯』部分,面向于初学者或者对算法感兴趣的朋友们。主要分享基础编程题,一些有趣、新颖的算法,我们要习惯于掌握解题的思路,如果对实操感兴趣,可以关注我的【C#项目】专栏。

本专栏会持续更新,不断完善。大家有任何问题,可以私信我。如果您对本专栏感兴趣,欢迎关注吧,大家一起学习,一起进步。

【Java】『蓝桥杯』10道编程题及答案(五)
在这里插入图片描述


一、题目

1.1 【程序1】

【程序41】
题目:海滩上有一堆桃子,五只猴子来分。第一只猴子把这堆桃子平均分为五份,多了一个,这只猴子把多的一个扔入海中,拿走了一份。第二只猴子把剩下的桃子又平均分成五份,又多了一个,它同样把多的一个扔入海中,拿走了一份,第三、第四、第五只猴子都是这样做的,问海滩上原来最少有多少个桃子?

1.2 【程序2】

【程序42】
题目:809*??=800*??+9*??+1 其中??代表的两位数,8*??的结果为两位数,9*??的结果为3位数。求??代表的两位数,及809*??后的结果。

1.3 【程序3】

【程序43】
题目:求0—7所能组成(1-8位)的奇数个数。

1.4 【程序4】

【程序44】
题目:一个不小于6的偶数总能表示为两个奇素数之和。

1.5 【程序5】

【程序45】
题目:判断几个9能被哪几个素数整除。

1.6 【程序6】

【程序46】
题目:两个字符串连接程序

1.7 【程序7】

【程序47】
题目:读取7个数(1—50)的整数值,每读取一个值,程序打印出该值个数的*。

1.8 【程序8】

【程序48】
题目:某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,加密规则如下:每位数字都加上5,然后用和除以10的余数代替该数字,再将第一位和第四位交换,第二位和第三位交换。

1.9 【程序9】

【程序49】
题目:计算字符串中子串出现的次数

1.10 【程序10】

【程序50】
题目:有五个学生,每个学生有3门课的成绩,从键盘输入以上数据(包括学生号,姓名,三门课成绩),计算出平均成绩,将原有的数据和计算出的平均分数存放在磁盘文件"stud"中。


二、答案

2.1 【程序1】

public class BeachDividedPeach {

	/**
	 * 【程序41】 题目:海滩上有一堆桃子,五只猴子来分。第一只猴子把这堆桃子平均分为五份,多了一个,这只猴子把多的一个扔入海中,拿走了一份。
	 * 第二只猴子把剩下的桃子又平均分成五份
	 * ,又多了一个,它同样把多的一个扔入海中,拿走了一份,第三、第四、第五只猴子都是这样做的,问海滩上原来最少有多少个桃子?
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		int sum = 0;
		int cnt = 0;
		outer: for (int i = 6; i < 10000; i++) {
			sum = i;
			cnt = 0;
			for (int j = 0; j < 5; j++) {
				if (sum % 5 == 1) {
					sum = sum - ((sum / 5) + 1);
					cnt++;
					if (cnt == 5) {
						System.out.println(i);
						break outer;
					}
				} else {
					break;
				}
			}
		}
	}
}


2.2 【程序2】

public class DoubleDigit {

	/**
	 * 【程序42】 题目:809*??=800*??+9*??+1(不是等式)
	 * 其中??代表的两位数,8*??的结果为两位数,9*??的结果为3位数。求??代表的两位数,及809*??后的结果。
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		int x;
		for (x = 10; x < 100; x++) {
			int a = 809 * x + 1;
			if (x * 8 < 100 && x * 9 > 99) {
				if (a >= 1000 && a <= 100000) {
					System.out.println("?? = " + x);
					System.out.println("809 * " + x + " = " + 809 * x);
				}
			}
		}
	}
}

2.3 【程序3】

public class Odd1_8 {

	/**
	 * 【程序43】 题目:求0—7所能组成(1-8位)的奇数个数。
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		int sum = 0;
		int t;
		for (int i = 1; i < 9; i++) {
			sum += count(i);
		}

		System.out.println(sum);// 下面一句为硬算,由此可以验证上述程序的正确性
		System.out.println(4 + 4 * 7 + 4 * 7 * 8 + 4 * 7 * 8 * 8 + 4 * 7 * 8
				* 8 * 8 + 4 * 7 * 8 * 8 * 8 * 8 + 4 * 7 * 8 * 8 * 8 * 8 * 8 + 4
				* 7 * 8 * 8 * 8 * 8 * 8 * 8);
	}

	private static int count(int i) {
		if (i == 1)
			return 4;
		if (i == 2)
			return 7 * count(i - 1);
		return 8 * count(i - 1);
	}

}

2.4 【程序4】

public class GoldbachConjecture {

	/**
	 * Goldbach Conjecture 【程序44】 题目:一个不小于6的偶数总能表示为两个奇素数之和。
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		boolean[] f=new boolean[50];
		for (int i = 6; i < 101; i += 2) {
			String str = i + " = ";
			int c = 0;
			f[(i-6)/2]=false;
			for (int j = 3; j < i; j += 2) {
				if (isPrime(j) && isPrime(i - j)) {
					c++;
					f[(i-6)/2]=true;
					if (c == 1) {
						str += j + " + " + (i - j);
					} else {
						str += " 或 " + j + " + " + (i - j);
					}
				} 
			}
			System.out.println(str);
		}
		boolean f1=true;
		for(int i=6;i<101;i+=2){
			if(!f[(i-6)/2]){
				f1=false;
			}
		}
		System.out.println("========================================");
		if (f1) {
			System.out.println("一个不小于6的偶数总能表示为两个奇素数之和。");
		} else {
			System.out.println("一个不小于6的偶数不是总能表示为两个奇素数之和。");
		}
	}

	public static boolean isPrime(int a) {
		if (a == 1)
			return false;
		for (int i = 3; i <= Math.sqrt(a); i++) {
			if (a % i == 0)
				return false;
		}
		return true;
	}
}



2.5 【程序5】

public class PrimeDivisible {

	/**
	 * 【程序45】 题目:判断几个9能被哪几个素数整除。
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		long k, t;
		t = 10;
		for (int i = 1; i <= 10; i++) {// i为9的个数
			t *= 10;
			k = t - 1;
			String str = k + "能够";
			int c = 0;
			for (int j = 2; j <= Math.sqrt(k); j++) {
				if (k % j == 0 && isPrime(j)) {
					c++;
					if (c == 1) {
						str += "能够被质数" + j + "整数。";
					} else {
						str += "还能够被质数" + j + "整数。";
					}
				}
			}
			System.out.println(str);
		}
	}

	private static boolean isPrime(int a) {
		if (a == 1)
			return false;
		for (int i = 2; i <= Math.sqrt(a); i++) {
			if (a % i == 0)
				return false;
		}
		return true;
	}
}


2.6 【程序6】

import java.util.Scanner;

public class StringConcat {

	/**
	 * 【程序46】 题目:两个字符串连接程序
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner sc = new Scanner(System.in);
		System.out.println("请分别输入两个字符串(用空格隔开,多余的自动去除):");
		String str1 = sc.next();
		String str2 = sc.next();
		System.out.println("\""+str1 + "\"和\"" + str2 + "\"连接起来的结果是:" + (str1 + str2));
	}

}

2.7 【程序7】

import java.util.Scanner;

public class ReadSevenNumbers {

	/**
	 * 【程序47】 题目:读取7个数(1—50)的整数值,每读取一个值,程序打印出该值个数的*。
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner sc = new Scanner(System.in);
		int[] a = new int[7];
		for (int i = 0; i < 7; i++) {
			System.out.println("请输入(1-50)之间的一个整数(第"+(i+1)+"个):");
			while (true) {
				a[i] = sc.nextInt();
				if (a[i] > 0 && a[i] < 51) {
					break;
				}
			}
			String str = "";
			for (int j = 0; j < a[i]; j++) {
				str += "*";
			}
			System.out.println(str);
		}
	}

}


2.8 【程序8】

import java.util.Scanner;

public class EncodingDecoding {

	/**
	 * 【程序48】
	 * 题目:某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,加密规则如下:每位数字都加上5,然后用和除以10的余数代替该数字
	 * ,再将第一位和第四位交换,第二位和第三位交换。
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner sc = new Scanner(System.in);
		String str;
		while (true) {
			System.out.println("请输入一个四位数,可以以0开头:");
			str = sc.next();
			boolean f = true;
			if (str.length() == 4) {
				for (int i = 0; i < 4; i++) {
					if (!Character.isDigit(str.charAt(i))) {
						f = false;
					}
				}
			} else {
				f = false;
			}
			if (f)
				break;
		}
		System.out.println("==========\n你输入的数字是:" + str);
		String s = encoding(str);
		System.out.println("==========\n加密后数字是:" + s);
		System.out.println("==========\n解密后数字是:" + decoding(s));
		System.out.println("==========\n输入数据与加密再解密的数字比较结果为:"
				+ (str.equals(decoding(s))));
	}

	private static String encoding(String str) {
		int[] a = new int[4];
		String s = "";
		int tmp;
		for (int i = 0; i < 4; i++) {
			a[i] = Integer.parseInt(str.substring(i, i + 1));
			tmp = (a[i] + 5) % 10;
			a[i] = tmp;
		}
		tmp = a[0];
		a[0] = a[3];
		a[3] = tmp;
		tmp = a[1];
		a[1] = a[2];
		a[2] = tmp;
		for (int i = 0; i < 4; i++) {
			s += "" + a[i];
		}
		return s;
	}

	private static String decoding(String str) {
		int[] a = new int[4];
		String s = "";
		int tmp;
		for (int i = 0; i < 4; i++) {
			a[i] = Integer.parseInt(str.substring(i, i + 1));
			if (a[i] >= 5)
				tmp = a[i] - 5;
			else
				tmp = a[i] + 10 - 5;
			a[i] = tmp;
		}
		tmp = a[0];
		a[0] = a[3];
		a[3] = tmp;
		tmp = a[1];
		a[1] = a[2];
		a[2] = tmp;
		for (int i = 0; i < 4; i++) {
			s += "" + a[i];
		}
		return s;
	}
}

2.9 【程序9】

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class StringAndSubstring {

	/**
	 * 【程序49】 题目:计算字符串中子串出现的次数
	 * 
	 * @throws Exception
	 */
	public static void main(String[] args) throws Exception {
		// TODO Auto-generated method stub
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		System.out.println("请输入一个字符串(任意长度):");
		String str = br.readLine();
		System.out.println("请输入要查找的子串:");
		String sub = br.readLine();
		int l = sub.length();
		
		int count = 0;
		for (int i = 0; i < str.length() - l; i++) {
			if (sub.equals(str.substring(i, i + l))) {
				count++;
			}
		}

		System.out.println("子串出现的总次数为:" + count);
	}

}


2.10 【程序10】

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.Serializable;
import java.util.Scanner;

public class OutputToDisk {

	/**
	 * 【程序50】 题目:有五个学生,每个学生有3门课的成绩,从键盘输入以上数据(包括学生号,姓名,三门课成绩),计算出平均成绩,
	 * 将原有的数据和计算出的平均分数存放在磁盘文件"stud"中。
	 * 
	 * @throws Exception
	 * @throws FileNotFoundException
	 */
	public static void main(String[] args) throws FileNotFoundException,
			Exception {
		// TODO Auto-generated method stub
		int number;
		String name;
		float score1;
		float score2;
		float score3;
		Student[] stud = new Student[5];

		Scanner sc = new Scanner(System.in);
		ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream(
				"stud.txt", true));
		for (int i = 0; i < 5; i++) {
			System.out.println("请输入第" + (i + 1) + "个同学的(学号、姓名、三科成绩):");
			number = sc.nextInt();
			name = sc.next();
			score1 = sc.nextFloat();
			score2 = sc.nextFloat();
			score3 = sc.nextFloat();// 以上为键盘输入学号、姓名及三科成绩

			stud[i] = new Student(number, name, score1, score2, score3);
			// 以下将上述输入及平均成绩写入到文件stud.txt中
			oos.writeInt(stud[i].getNumber());
			oos.writeUTF(stud[i].getName());
			oos.writeFloat(stud[i].getScore1());
			oos.writeFloat(stud[i].getScore2());
			oos.writeFloat(stud[i].getScore3());
			oos.writeFloat(stud[i].getAvg());
		}

		oos.flush();
		oos.close();

		// 以下为从文件中读取上述信息,然后输出姓名及平均成绩
		System.out.println("以下为从文件中读取上述信息,然后输出姓名及平均成绩:");
		ObjectInputStream ois = new ObjectInputStream(new FileInputStream(
				"stud.txt"));
		for (int i = 0; i < 5; i++) {
			int h;
			String xm;
			float a;
			float b;
			float c;
			float d;
			h = ois.readInt();
			xm = ois.readUTF();
			a = ois.readFloat();
			b = ois.readFloat();
			c = ois.readFloat();
			d = ois.readFloat();
			stud[i] = new Student(h, xm, a, b, c);
			System.out.println(stud[i].getName() + ": " + stud[i].getAvg());
		}
		ois.close();
	}

}

class Student implements Serializable {
	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	private int number;
	private String name;
	private float score1;
	private float score2;
	private float score3;
	private float avg;

	public Student() {

	}

	public Student(int number, String name, float score1, float score2,
			float score3) {
		this.number = number;
		this.name = name;
		this.score1 = score1;
		this.score2 = score2;
		this.score3 = score3;
		this.avg = (score1 + score2 + score3) / 3.0f;
	}

	public int getNumber() {
		return number;
	}

	public String getName() {
		return name;
	}

	public float getScore1() {
		return score1;
	}

	public float getScore2() {
		return score2;
	}

	public float getScore3() {
		return score3;
	}

	public float getAvg() {
		return avg;
	}

}


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/476000.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

深度学习之神经网络量化理解

深度学习系列文章目录 文章目录 深度学习系列文章目录前言一、什么是量化量化现状GoogleTensorRTTVM量化基本知识基于线性量化的对称量化和非对称量化 总结 前言 刚开始接触神经网络&#xff0c;对量化是2年前那会&#xff0c;用NCNN和TVM在树莓派上部署一个简单的SSD网络。那…

知识点滴 - 世界化工企业百强

2022年7月25日&#xff0c;美国《化学与工程新闻》&#xff08;C&EN&#xff09;发布2022年全球化工企业50强名单。 2022-09-21日附近&#xff0c;国际石化市场信息服务商安迅思ICIS发布了最新世界化工企业100强排行榜&#xff08;Top 100 Chemical Companies&#xff09;&…

基于微信小程序的垃圾分类系统的研究与实现(附源码和教程)

1. 简介 本文介绍的事基于微信小程序的垃圾分类系统&#xff0c;主要实现的功能有登录、注册、垃圾分类查询、垃圾预约回收、垃圾分类功能。 2.系统设计与实现 本章节是论文的重点&#xff0c;基于上一章介绍的总体设计框架的搭建&#xff0c;详细对小程序的页面布局、流程设…

Mask2Former来了!用于通用图像分割的 Masked-attention Mask Transformer

原理https://blog.csdn.net/bikahuli/article/details/121991697 源码解析 论文地址&#xff1a;http://arxiv.org/abs/2112.01527 项目地址&#xff1a;https://bowenc0221.github.io/mask2former Mask2Former的整体架构由三个组件组成&#xff1a; 主干特征提取器&#xff…

GPT在医疗健康领域:应用、价值与展望

目录 发展背景 应用场景 价值分析 未来发展趋势 发展痛点 市场规模预测 结论 全文精要提炼&#xff1a; 作者&#xff1a;ChatgptMidjourneyFOTORXmind 随着科技的不断发展&#xff0c;人工智能&#xff08;AI&#xff09;在各行各业的应用越来越广泛&#xff0c;尤其…

unity NGUI使用方法

基本用法 很多基本模块比如按钮、slider等都能从Prefab中直接拖拽到场景中实现&#xff0c;但都需要有一个Collider&#xff08;Prefab已经自带&#xff09; 因为不仅是UI&#xff0c;所有带有Collider的游戏物体都能接收到OnClick&#xff0c; OnPress这样的事件——前提是需…

sed编辑器基础命令

shell脚本编程系列 学习sed编辑器 sed编辑器被称作流编辑器&#xff08;stream editor&#xff09;,与普通的交互式文本编辑器不同&#xff0c;在交互式文本编辑器可以用键盘命令交互式插入、删除或替换文本数据。流编辑器则是根据事先设计好的一组规则编辑数据流。 sed编辑器…

人脸检测--传统方法

人脸检测与识别综述 人脸检测与识别是计算机视觉和生物识别领域中最受关注的研究内容。 如何从包含人脸内容的图像、视频等多媒体数据中&#xff0c;找到人脸&#xff0c;并对其身份进行判定&#xff0c;是人脸检测与识别中的主要问题。 应用场景 - 安全监控 - 访问控制 …

【Java校招面试】基础知识(一)——Java常用类库

目录 前言一、编程时常用的Java类库1. 异常捕获模块(try-catch-finally, Error, Exception)2. boolean / short / int / long / float / double / char / byte及其对应的引用类型 二、面试时常考的Java类库1. 一切类型的父类Object及其equals / hashCode / toString方法2. 常用…

anaconda安装pytorch的流程

1.查看本机支持的CUDA版本 cmd:nvidia-smi 2.安装本机支持的CUDA版本 CUDA安装教程 GPU, CUDA,cuDNN三者的关系总结 3.使用anaconda创建虚拟环境 3.在anaconda对应的虚拟环境中安装CUDA对应的pytorch版本 anaconda安装pytorch&#xff08;anaconda3&#xff0c;Windows10&am…

idea使用 ( 二 ) 创建java项目

3.创建java项目 3.1.创建普通java项目 3.1.1.打开创建向导 接 2.3.1.创建新的项目 也可以 从菜单选择建立项目 会打开下面的选择界面 3.1.2.不使用模板 3.1.3.设置项目名 Project name : 项目名 Project location : 项目存放的位置 确认创建 3.1.4.关闭tips 将 Dont s…

二叉搜索树【Java】

文章目录 二叉搜索树的性质二叉搜索树的操作遍历查找插入删除 二叉搜索树又称为二叉排序树&#xff0c;是一种具有一定性质的特殊的二叉树&#xff1b; 二叉搜索树的性质 若它的左子树不为空&#xff0c;则左子树上结点的值均小于根节点的值&#xff1b; 若它的右子树不为空&a…

08 Kubernetes应用配置管理

课件 在 Kubernetes 中&#xff0c;secret 是一种用于存储敏感信息的对象。Kubernetes 支持以下三种类型的 secret&#xff1a; Opaque&#xff1a;这是默认的 secret 类型&#xff0c;可以用于存储任何类型的数据&#xff0c;包括字符串、二进制数据等。 Service Account&…

【P2】Jmeter 线程组的并行与串行

一、串行与并行规则 &#xff08;1&#xff09;、测试计划中的执行顺序遵循&#xff1a;setUp 线程组 -> 线程组 -> tearDown 线程组 &#xff08;2&#xff09;、如果将测试计划中的独立运行每个线程组勾选上&#xff0c;则多个线程组串行执行&#xff0c;否则并发执行…

吴恩达 Chatgpt prompt 工程--5.Transforming

探索如何将大型语言模型用于文本转换任务&#xff0c;如语言翻译、拼写和语法检查、音调调整和格式转换。 Setup import openai import osfrom dotenv import load_dotenv, find_dotenv _ load_dotenv(find_dotenv()) # read local .env fileopenai.api_key os.getenv(OPE…

2.6 浮点运算方法和浮点运算器

学习目标&#xff1a; 以下是一些具体的学习目标&#xff1a; 理解浮点数的基本概念和表示方法&#xff0c;包括符号位、指数和尾数。学习浮点数的运算规则和舍入规则&#xff0c;包括加、减、乘、除、开方等。了解浮点数的常见问题和误差&#xff0c;例如舍入误差、溢出、下…

Unity一般打包流程

Unity一般打包流程 通常打包流程主要是通过 Building setting来选择需要打包的场景后出包到指定文件夹位置&#xff0c;也可以采用 [MenuItem("MyMenu/Do Something")]中使用static函数来选择打包路径和打包方式——需要将该脚本放置在 Editor文件夹下 [MenuItem(&…

Vue3源码 第六篇-JavaScript AST transform函数

系列文章目录 Vue3源码 第一篇-总览 Vue3源码 第二篇-Reactive API Vue3源码 第三篇-Vue3是如何实现响应性 Vue3源码 第四篇-Vue3 setup Vue3源码 第五篇-Vue3 模版compile AST生成篇 文章目录 系列文章目录前言一、transform 转换二、traverseNode 遍历节点&#xff0c;trave…

B/S结构系统的会话机制(session)

B/S结构系统的会话机制(session) 文章目录 B/S结构系统的会话机制(session)每博一文案1. session 会话机制的概述2. 什么是 session 的会话3. session 的作用4. session 的实现原理解释5. 补充&#xff1a; Cookie禁用了&#xff0c;session还能找到吗 &#xff1f;6. 总结一下…

PCA学习

前置知识 统计 假设数据集 X ∈ R n m \mathbf{X}\in\mathbb{R}^{n\times m} X∈Rnm,其中 n n n表示样本数量&#xff0c; m m m表示特征个数 均值 X ˉ 1 n e T X 1 n ∑ i 1 n X i \bar{\mathbf{X}} \frac{1}{n}\mathbf{e}^T\mathbf{X} \frac{1}{n} \sum_{i1}^{n}\mat…