public static void main(string args)
/*** 把數字轉化成中文描述,比如12330453
* 轉化成:一千二百三十三萬零四百五三
*/public static void numtostring(int n)
if(n==0)
int wan=n/10000;
int qian=n%10000;
if(wan!=0)
fournumtostring(qian);
}private static void fournumtostring(int n_4)
int num=new int[4];
int i=3;
while(n_4!=0)
for(int j=i+1;j<4;j++)
if(flag==0) break;
}else if(j==1)else
if(flag==0) break;
}}else if(j==2)
}else
if(flag==0) break;
}}else if(j==3)}}
private static string numtochinese(int n)
}/**
* 筆試演算法題,如輸入整數n,按如下方式輸出矩陣。設n=4,為
* 1, 2, 6, 7
* 3, 5, 8, 13
* 4, 9, 12,14
* 10,11,15,16
*/public static void put(int n)//起始方向
if(i==0 && flag==1)
flag=0;
continue;
}else if(i==0 && flag==0)
if(flag==1 && j==0)
flag=0;
continue;
}else if(flag==0 && j==0)
if(flag==1 && j==n-1)
flag=0;
continue;
}else if(flag==0 && j==n-1)
if(i==n-1 && flag==1)
flag=0;
continue;
}else if(i==n-1 && flag==0)
}tmp[n-1][n-1]=k;
system.out.println("輸入為"+n+",輸出矩陣如下:");
for(int m=0;m};/**
* 將輸入的兩個字串數字相乘,返回結果字串
*/public static string stringmulti(string num1,string num2)
三道頭條的演算法筆試題
例1 給出乙個長度為n的陣列a1 a2 an,請找出在所有連續區間中,區間和最大同時這個區間0的個數小於等於3個,輸出這個區間和。輸入 第一行乙個正整數n,表示陣列長度,1 n 1000000。第二行為n個正整數a1 a2 an,其中 1e9 a1,a2,an 1e9 輸出 乙個整數 樣例 輸入1 ...
筆試回顧 一道有趣的演算法題
有這樣乙個陣列a,長度為n,相鄰元素的絕對值都為1,例如a 現給定數字a,設計演算法求a在a中的位置。陣列第乙個數為array 0 要找的數為y,設t abs y array 0 由於每個相鄰的數字之差的絕對值為1。故第t個位置之前的數肯定都比y小。因此直接定位到array t 重新計算t,t ab...
分享三道面試的演算法題
第一道 b 在北京有n個工區,形成乙個環狀,bytebus是往返在各個工區的通勤車,按工區的順序行駛,其中第 i 個工區有汽油 gas i 公升。你有一輛油箱容量無限的的bytebus,從第 i 個工區開往第 i 1 個工區需要消耗汽油 cost i 公升。你從其中的乙個工區出發,開始時油箱為空。如...