IT公司笔试常考的算法题
[10-10 21:21:19] 来源:http://www.77xue.com 笔试题目 阅读:8993次
概要:Set(iRowNo + 1);Grid[iRowNo][iColNo] = 0;iSumR[iRowNo]--;iSumC[iColNo]--;}}}return iFound; // 用于判断是否有解}int main(int argc, char* argv[]) {if(!Set(0))printf("Failure!");}9、有4种面值的邮票很多枚,这4种邮票面值分别1, 4, 12, 21,现从多张中最多任取5张进行组合,求取出这些邮票的最大连续组合值。(据说是华为20xx年校园招聘笔试题)#define N 5#define M 5int k, Found, Flag[N];int Stamp[M] = {0, 1, 4, 12, 21};// 在剩余张数n中组合出面值和Valueint Combine(int n, int Value) {if(n >= 0 && Value == 0) {Found = 1;int Sum = 0;for(i
IT公司笔试常考的算法题,标签:驾照笔试题目,腾讯笔试题目,http://www.77xue.com
Set(iRowNo + 1);
Grid[iRowNo][iColNo] = 0;
iSumR[iRowNo]--;
iSumC[iColNo]--;
}
}
}
return iFound; // 用于判断是否有解
}
int main(int argc, char* argv[]) {
if(!Set(0))
printf("Failure!");
}
9、有4种面值的邮票很多枚,这4种邮票面值分别1, 4, 12, 21,现从多张中最多任取5张进行组合,求取出这些邮票的最大连续组合值。(据说是华为20xx年校园招聘笔试题)
#define N 5
#define M 5
int k, Found, Flag[N];
int Stamp[M] = {0, 1, 4, 12, 21};
// 在剩余张数n中组合出面值和Value
int Combine(int n, int Value) {
if(n >= 0 && Value == 0) {
Found = 1;
int Sum = 0;
for(int i=0; i
Sum += Stamp[Flag];
printf("%d ", Stamp[Flag]);
}
printf("\tSum=%d\n\n", Sum);
}else for(int i=1; i0; i++)
if(Value-Stamp >= 0) {
Flag[k++] = i;
Combine(n-1, Value-Stamp);
Flag[--k] = 0;
}
return Found;
}
int main(int argc, char* argv[]) {
for(int i=1; Combine(N, i); i++, Found=0);
}
10、大整数数相乘的问题。(这是20xx年在一考研班上遇到的算法题)
void Multiple(char A[], char B[], char C[]) {
int TMP, In=0, LenA=-1, LenB=-1;
while(A[++LenA] != '\0');
while(B[++LenB] != '\0');
int Index, Start = LenA + LenB - 1;
for(int i=LenB-1; i>=0; i--) {
Index = Start--;
if(B != '0') {
for(int In=0, j=LenA-1; j>=0; j--) {
TMP = (C[Index]-'0') + (A[j]-'0') * (B - '0') + In;
C[Index--] = TMP % 10 + '0';
In = TMP / 10;
}
C[Index] = In + '0';
}
}
}
int main(int argc, char* argv[]) {
char A[] = "21839244444444448880088888889";
char B[] = "38888888888899999999999999988";
char C[sizeof(A) + sizeof(B) - 1];
for(int k=0; k
C[k] = '0';
C[sizeof(C)-1] = '\0';
Multiple(A, B, C);
for(int i=0; C != '\0'; i++)
printf("%c", C);
}
11、求最大连续递增数字串(如“ads3sl456789DF3456ld345AA”中的“456789”)
int GetSubString(char *strSource, char *strResult) {
int iTmp=0, iHead=0, iMax=0;
for(int Index=0, iLen=0; strSource[Index]; Index++) {
if(strSource[Index] >= '0' && strSource[Index] <= '9' &&
strSource[Index-1] > '0' && strSource[Index] == strSource[Index-1]+1) {
iLen++; // 连续数字的长度增1
} else { // 出现字符或不连续数字
if(iLen > iMax) {
iMax = iLen; iHead = iTmp;
}
上一页 [1] [2] [3] [4] [5] [6] [7] [8] [9] 下一页
Tag:笔试题目,驾照笔试题目,腾讯笔试题目,求职指南 - 求职笔试面试 - 笔试题目
- 上一篇:银行笔试专业词汇表
《IT公司笔试常考的算法题》相关文章
- IT公司笔试常考的算法题
- › 应届毕业生应聘IT公司英文简历表格范文
- › 名企考试题汇总IT公司的面试题
- › it公司笔试题大放送
- › 部分IT公司笔试算法题
- › IT公司笔试常考的算法题
- › 部分IT公司常考的算法题目
- › IT公司辞职报告
- › 几大IT公司笔经
- › 应届毕业生求职IT公司英文简历范文
- › 想进IT公司 请您这样写简历
- 在百度中搜索相关文章:IT公司笔试常考的算法题
- 在谷歌中搜索相关文章:IT公司笔试常考的算法题
- 在soso中搜索相关文章:IT公司笔试常考的算法题
- 在搜狗中搜索相关文章:IT公司笔试常考的算法题