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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

2014 华为机考 中国海洋大学上午第三题(java实现)

發(fā)布時間:2025/3/15 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 2014 华为机考 中国海洋大学上午第三题(java实现) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

??? 昨天上午,在還算輕松地情況下完成了機考,雖然最后一題做了一個多小時都沒做出來,但是慶幸后面的行為模式測試過關(guān)了,真是刷人的測試啊。

回來后把第三題再想想,重新做了一遍,結(jié)果不到20分鐘就做出來了(我覺得做出來了,幾次錯誤、正確測試都還行,但正確與否還需驗證)。明天要面試,不知道結(jié)果怎樣,但是不管怎樣,盡力就好,像半澤直樹那樣拼搏的人生才有意義啊~~!!

???? 題目,記得個大概。就是有字符串“?^_^*”,"?"與“*”中間字符為主要匹配字符,“?”代表一個字符,而“*”可以當做0或任意數(shù)量字符。對目標字符串進行匹配,并輸出字符串匹配成功的第一個字符的下標,字符串的第一個字符下標為0。(我一開始沒注意到“?”可以有N多個,白浪費功夫做一個“?”的匹配了)。

??? 例子:

??? 輸入:?^_^*

???????????? abc^_^abc

??? 輸出:2

?

??? 俺自己的代碼:

import java.io.BufferedInputStream; import java.util.ArrayList; import java.util.List; import java.util.Scanner;public class Main {static int num=0;public static void main(String[] args) {Scanner cin = new Scanner(new BufferedInputStream(System.in));String s1 = cin.next();String s2 = cin.next();int flag=0,k=0,t=-1;char[] ch = s2.toCharArray();List<Character> list = get(s1);for(int i=num-1;i<ch.length;i++){if(flag==0){if(ch[i]==list.get(k)){flag=1;k++;t=i-num;}}else{if(ch[i]==list.get(k)){k++;if(k==list.size())break;}else{flag=0;k=0;t=-1;}}}if(k<list.size())t=-1;if(t>=0)System.out.print(t);elseSystem.out.print(t);}public static List<Character> get(String s){List<Character> list = new ArrayList<Character>();char[] ch = s.toCharArray();for(char c:ch){if(c=='?')num++;else if(c!='*')list.add(c);elsebreak;}return list;}} View Code

?

?

???

轉(zhuǎn)載于:https://www.cnblogs.com/sasaxu/p/3365412.html

創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎

總結(jié)

以上是生活随笔為你收集整理的2014 华为机考 中国海洋大学上午第三题(java实现)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。