日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

张新、黎民、王亮三位老师分别来自湖南、广西、甘肃,分别教语文、数学和英语。已知:(1)张新不是湖南人,黎明不是广西人;(2)湖南的老师不教英语;(3)广西的老师教语文;(4)黎民不教数学。由此可知,王

發布時間:2025/1/21 编程问答 27 豆豆

【已解決】 TCL面試題(邏輯推理+編程驗證

原 題:

張新、黎民、王亮三位老師分別來自湖南、廣西、甘肅,分別教語文、數學和英語。已知:(1)張新不是湖南人,黎明不是廣西人;(2)湖南的老師不教英語;(3)廣西的老師教語文;(4)黎民不教數學。由此可知,王亮教的是:(A)

A.數學 ??????????B.英語??????????C.語文 ???????????D.無法確定

邏輯推理:

步驟1:

(1)? 由條件3知,廣西老師教語文;

(2)? 結合條件2得:湖南老師可能教數學or語文,而上步(1)中知語文已確定由廣西老師教,則湖南老師只能教數學;

(3)? 則得到如下對應關系:廣西-語文 ?湖南-數學? 甘肅-英語

步驟2:

(1)? 由條件4得,黎明可能教語文or英語,則步驟1中對應結論表明:他只能是廣西or甘肅人。又由條件1得,他可能是湖南or甘肅人,我們通過對這兩個約束條件取交集,可以確定他必是甘肅人,即黎民-甘肅-英語;

(2)? 由條件1得,張新可能是廣西or甘肅人,又因上步(1)中黎民已確定為甘肅人,則張新必為廣西人;

(3)? 則不難得出如下對應關系:張新-廣西-語文 ?王亮-湖南-數學? 黎民-甘肅-英語

推理過程見附圖1:


編程驗證:

編程思想:

(1)? 將名字、省份、學科,共9個元素放入3個長度為3的字符串數組中,分別為name[3],province[3],subject[3]。 然后讓它們全部自由組合,得到27種不同小組合。

? ? ? ? ? ? 特別說明:這27種僅僅是由3個元素構成的小組合,我們要得到的最終大組合是由3對這樣的子組合構成的由9個無重復元素構成的大組合。


(2)? 接下來,我們要解決大組合的構造問題,即利用這27種小組合構建大組合的問題。本文利用了一種有效的組合方法,操作過程見圖2。


?

(3)? 經上步可得2925種大組合,遺憾的其中部分大組合并不是由9個不同元素分別構成的,存在一個元素多次出現的情況,不符合題目要求,需剔除。特別提示:文字描述比較抽象,讀者可以在代碼中自行輸出查看。

(4)? 如上所述,剔除不合理組合不難,通過判斷每條大組合中是否包含全部的9個元素即可。未全部包含則剔除,處理后得到符合要求的36種大組合。

(5)? 然后,我們將題中的四個約束條件用’&&’形式連接,用來對36種組合進行判斷,從而得到最終的符合要求組合。

程序驗證,運行結果見圖3:


完整程序Java代碼清單:

package Qestion;import java.util.ArrayList;public class Qestion {private String situation[][][] = new String[3][3][3];private static ArrayList<String[]> set = new ArrayList<>();private static ArrayList<String[]> list = new ArrayList<>();private static ArrayList<String[]> list2 = new ArrayList<>();private static int count = 0; //計數變量public Qestion() {// TODO Auto-generated constructor stubString name[] = { "ZhangXin", "LiMin", "WangLiang" };String province[] = { "HuNan", "GuangXi", "GanSu" };String subject[] = { "Chinese", "Math", "English" };for (int i = 0; i < 3; i++) {for (int j = 0; j < 3; j++) {for (int k = 0; k < 3; k++) {this.situation[i][j][k] = name[i] + "," + province[j] + ","+ subject[k];list.add(new String[] { name[i], province[j], subject[k] }); // list中放字符串數組}}}}public static void main(String[] args) {// TODO Auto-generated method stubQestion qes = new Qestion();qes.list_avail(list);// Iterator<String[]> it =set.iterator(); //查看set中內容// while(it.hasNext()){ //輸出符合條件的所有情況qes.func1();qes.func2(); // System.out.println(list2.size());}public static String String_LinkTool(String[] str) {int N = str.length;String s = "";for (int i = 0; i < N; i++) {s = s + str[i];}return s;}public static Boolean String_IsexistTool(String... s) {String FatherStr = s[0];String SonStr0 = s[1];String SonStr1 = s[2];String SonStr2 = s[3];String SonStr3 = s[4];String SonStr4 = s[5];String SonStr5 = s[6];String SonStr6 = s[7];String SonStr7 = s[8];String SonStr8 = s[9];int result0 = -1, result1 = -1, result2 = -1, result3 = -1, result4 = -1, result5 = -1, result6 = -1, result7 = -1, result8 = -1;result0 = FatherStr.indexOf(SonStr0);result1 = FatherStr.indexOf(SonStr1);result2 = FatherStr.indexOf(SonStr2);result3 = FatherStr.indexOf(SonStr3);result4 = FatherStr.indexOf(SonStr4);result5 = FatherStr.indexOf(SonStr5);result6 = FatherStr.indexOf(SonStr6);result7 = FatherStr.indexOf(SonStr7);result8 = FatherStr.indexOf(SonStr8);if ((result0 >= 0) && (result1 >= 0) && (result2 >= 0)&& (result3 >= 0) && (result4 >= 0) && (result5 >= 0)&& (result6 >= 0) && (result7 >= 0) && (result8 >= 0)) {// System.out.println(FatherStr);// count++;return true;} else {return false;}}public static Boolean Judge_assist(String[] str, String a, String b) {int result00 = -1, result01 = -1;for (int i = 0; i < str.length; i++) {result00 = str[i].indexOf(a);result01 = str[i].indexOf(b);if ((result00 >= 0) && (result01 >= 0)) {return false;}}return true;}public void list_avail(ArrayList<String[]> list) {int N = list.size();for (int i = 0; i < N; i++) { // 得到2925種種組合,放入set中for (int j = i + 1; j < N; j++) { // 1 2 3 4 5 6 ... 27for (int k = j + 1; k < N; k++) {String[] ss = new String[9];ss[0] = list.get(i)[0];ss[1] = list.get(i)[1];ss[2] = list.get(i)[2];ss[3] = list.get(j)[0];ss[4] = list.get(j)[1];ss[5] = list.get(j)[2];ss[6] = list.get(k)[0];ss[7] = list.get(k)[1];ss[8] = list.get(k)[2];set.add(ss);}}}}public void func1() {for (String[] s : set) { // 符合分別由9個選項組成的,無重復組合(共36個)if (String_IsexistTool(String_LinkTool(s), "ZhangXin", "LiMin","WangLiang", "HuNan", "GuangXi", "GanSu", "Chinese","Math", "English")) {// System.out.println(String_LinkTool(it.next()));String[] ss = s;// System.out.println(ss[3]);String[] temp = new String[3];temp[0] = ss[0] + ss[1] + ss[2];temp[1] = ss[3] + ss[4] + ss[5];temp[2] = ss[6] + ss[7] + ss[8];list2.add(temp);count++;}}}public void func2() {for (String[] s : list2) { // 判斷符合四個條件的組合if (Judge_assist(s, "ZhangXin", "HuNan")&& Judge_assist(s, "LiMin", "GuangXi")&& Judge_assist(s, "English", "HuNan")&& (!Judge_assist(s, "Chinese", "GuangXi"))&& Judge_assist(s, "Math", "LiMin")) {System.out.println(s[0] + " " + s[1] + " " + s[2]);}}} }

程序說明文檔:

Qestion( )??//構造方法,完成27種小組合的構建,并存入list數組列表中。

list_avail(ArrayList<String> )?? //夠建2925種大組合,并存入set數組列表中。

String_IsexistTool(String…)?? //剔除工具,處理后得到36種合理組合,并存入list2中。

Judge_assist(String[],String,String)? ?//條件判斷輔助工具,由題中判斷條件返回布爾值。

String_LinkTool(String[])?? //字符串連接工具,將字符串數組中內容連接后返回。

int count??//記錄個數

?

?

?

?

?

總結

以上是生活随笔為你收集整理的张新、黎民、王亮三位老师分别来自湖南、广西、甘肃,分别教语文、数学和英语。已知:(1)张新不是湖南人,黎明不是广西人;(2)湖南的老师不教英语;(3)广西的老师教语文;(4)黎民不教数学。由此可知,王的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 日韩aⅴ视频 | 黄骗免费网站 | 中文字幕在线视频精品 | 中文字幕av在线免费 | 免费黄色成人 | 亚洲自偷自偷偷色无码中文 | 男人吃奶视频 | 男女午夜影院 | 狼人伊人久久 | jjzzjjzz欧美69巨大 | 在线免费观看一区二区 | 男人操女人下面 | 视频丨9l丨白浆 | 51妺嘿嘿午夜福利 | 亚洲一区电影网 | 性自由色xxxx免费视频 | 欧美日韩网站 | 国产资源在线视频 | 国产精品啪啪啪视频 | 51ⅴ精品国产91久久久久久 | 成人做爰66片免费看网站 | 巨胸大乳www视频免费观看 | 日本偷偷操 | 亚洲综合色在线观看 | 成人av无码一区二区三区 | 欧美成人免费在线观看视频 | 日韩美女免费视频 | 性自由色xxxx免费视频 | 国产又粗又黄视频 | 精品国产一区二区三区久久狼黑人 | 男女扒开双腿猛进入爽爽免费 | 亚洲精品免费网站 | 精品国自产拍在线观看 | 一区二区三区视频网 | 免费视频精品 | 中文字幕人妻丝袜乱一区三区 | 亚洲va国产天堂va久久 en | 成人黄色电影在线 | 午夜精品久久久久久久99老熟妇 | 98成人网 | 最新日本中文字幕 | 夜夜欢天天干 | 国产人妖在线 | 欧美岛国国产 | 无遮挡av| 少妇又色又紧又大爽又刺激 | 天天干天天舔天天射 | av福利在线 | 少妇第一次交换又紧又爽 | 美日韩中文字幕 | 日本视频在线免费观看 | 日日干夜夜操 | 欧美第三页 | 黄色av网站免费观看 | 久久福利一区 | 在线免费a视频 | 人妖ts福利视频一二三区 | 国产欧美一区二区三区鸳鸯浴 | 国产粉嫩av | 动漫美女被吸乳奶动漫视频 | 午夜久久久久久 | 亚州中文 | 欧美在线性爱视频 | 色秀视频在线观看 | 黄色三级三级三级三级 | 免费黄色在线看 | 午夜成年视频 | 九色蝌蚪91 | 在线观看亚洲一区 | 福利一区在线 | 亚洲天堂最新 | 97综合视频| 超碰九七 | 久久久久亚洲av成人人电影 | 葵司一区二区 | 中文字幕av片 | 国产精品揄拍一区二区 | 日一区二区| 欧美激情久久久久久 | 奇米影视第四色777 波多野结衣一区二区三区免费视频 | 葵司有码中文字幕二三区 | 蜜臀av一区二区三区有限公司 | 99国产精品99久久久久久 | 精彩视频一区二区三区 | 日韩美女视频19 | 青春草网站 | 国产成人在线电影 | 亚洲国产精品无码久久 | 婷婷日| 成人精品水蜜桃 | 伊人ab| 免费日本黄色网址 | 三级黄色片免费观看 | 激情欧美网站 | 麻豆av电影网| 人妻妺妺窝人体色www聚色窝 | 狠狠做深爱婷婷综合一区 | 闫嫩的18sex少妇hd | 91精品国产成人 |