騰訊2017暑期實習生程式設計題

2021-07-14 21:55:17 字數 2279 閱讀 3894

刷題

#pragma warning(disable:4996)//遮蔽警告 

//構造回文

//題目描述

///*

給定乙個字串s,你可以從中刪除一些字元,使得剩下的串是乙個回文串。如何刪除才能使得回文串最長呢?

輸出需要刪除的字元個數。

*///思路

/*其實就是,原字串翻轉之後的字串跟原字串的最長公共子串行

那麼利用動態規劃的最長公共子串行的遞推關係如下

|max str[i]!=str[j]

f(i,j)= |0 i==0||j==0

|f(i-1,j-1) +1 str[i]==str[j]

時間複雜度o(n*n),

空間複雜度o(n*n)

*/#include #include #include #include #include #include #include using namespace std;

unsigned int f[1001][1001];

class solution

} return n-f[n][n];

}};//int main()

//;// cout << a.plalindrome(str);

// system("pause");

// return 0;

//}int main()

return 0;

}

#pragma warning(disable:4996)//遮蔽警告 

//演算法基礎-字元移位

//題目描述

///*

小q最近遇到了乙個難題:把乙個字串的大寫字母放到字串的後面,各個字元的相對位置不變,且不能申請額外的空間。

你能幫幫小q嗎?

*///思路

/*從後往前查,設兩個下標指標i,j

str[i]代表需要插入的位置

str[j]代表當前正在搜尋大寫字母的位置

當str[j]找到大寫字母,需把str[j]存起來

便讓i和j之間的字母往前挪,然後str[j]替換str[i]

*/#include #include #include #include #include #include #include using namespace std;

unsigned int f[1002][1002];

class solution

} return str;

}};int main()

return 0;

}

#pragma warning(disable:4996)//遮蔽警告 

//有趣的數字

//題目描述

///*

小q今天在上廁所時想到了這個問題:有n個數,兩兩組成二元組,差最小的有多少對呢?差最大呢?

*///思路

/**/

#include #include #include #include #include #include #include using namespace std;

unsigned int dat[100000];

int main()

else

if (min == dat[i])

mincount++;

else if (min > dat[i])

}} //若全部數字相同,提早退出

if (mincount == n)

else

maxcount = mincount*maxcount;

sort(dat, dat + n);

/*********** 求最小值的對數 ***********/

mincount = 1;

min = 0xffffffff;

int samenum = 1;

bool issameflag = false;

for (int i = 1; i < n; i++)

else if (min == temp)

if (0 == temp)

}else

}} if (samenum>1)

mincount += samenum*(samenum - 1) / 2;

cout << mincount << ' ' << maxcount << endl;

} return 0;

}

騰訊2017暑期實習生程式設計題

構造回文串 給定乙個字串s,你可以從中刪除一些字元,使得剩下的串是乙個回文串。如何刪除才能使得回文串最長呢?輸出需要刪除的字元個數。輸入描述 輸入資料有多組,每組包含乙個字串s,且保證 1 s.length 1000.輸出描述 對於每組資料,輸出乙個整數,代表最少需要刪除的字元個數。示例1 輸入 a...

騰訊2017暑期實習生程式設計題

程式設計題 構造回文 時間限制 1秒 空間限制 32768k 給定乙個字串s,你可以從中刪除一些字元,使得剩下的串是乙個回文串。如何刪除才能使得回文串最長呢?輸出需要刪除的字元個數。輸入描述 輸入資料有多組,每組包含乙個字串s,且保證 1 s.length 1000.輸出描述 對於每組資料,輸出乙個...

騰訊2017暑期實習生程式設計題

三個題 難度 第三題 第一題 第二題 第一題構造回文 輸入描述 輸入資料有多組,每組包含乙個字串s,且保證 1 s.length 1000.輸出描述 對於每組資料,輸出乙個整數,代表最少需要刪除的字元個數。示例1abcda google2 2 第一題 includetypedef long long...