字串反轉——來自華為OJ平臺測試基礎篇
/*
* 字串反轉
* 與字元逆序一樣,是同一個程式
* 描述: 寫出一個程式,接受一個字串,然後輸出該字串反轉後的字串。例如:
* 知識點: 陣列,指標
* 題目來源: 內部整理
* 練習階段: 初級
* 執行時間限制: 10Sec
* 記憶體限制: 128MByte
* 輸入:
* 輸入N個字元
* 輸出:
* 輸出該字串反轉後的字串
* 樣例輸入: abcd
* 樣例輸出: dcba
*/
#include <iostream>
#include <string>
using namespace std;
void Input(std::string &str,int &strlen );
bool Isvalid(int strlen);
void reverse(std::string sourcestr,std::string &deststr,int strlen);
void arrange(std::string &str,int strlen,int &begin,int &end);
void Output(std::string str);
int main()
{
std::string str;
std::string deststr;
int strlen = 0;
int begin = 0;
int end = 0;
Input(str,strlen);
if(!Isvalid(strlen))
{
return -1;
}
deststr.reserve(strlen);
reverse(str,deststr,strlen);
arrange(deststr,strlen,begin,end);
Output(deststr);
system("pause");
return 0;
}
void Input(std::string &str,int &strlen )
{
getline(std::cin,str,'\n');
strlen = str.size();
}
bool Isvalid(int strlen)
{
if(strlen>100)
{
return false;
}
return true;
}
void reverse(std::string sourcestr,std::string &deststr,int strlen)
{
for(int i=strlen-1;i>=0;i--)
{
char c = sourcestr.at(i);
deststr.push_back(c);
}
return;
}
void arrange(std::string &str,int strlen,int &begin,int &end)
{
char* p = " \t\n";
for(int i=0;i<strlen;i++)
{
if(str.at(i)!=p[0] && str.at(i)!= p[1] && str.at(i)!=p[2])
{
begin = i;
break;
}
}
for(int j=strlen-1;j>=0;j--)
{
if(str.at(j)!=p[0] && str.at(j)!= p[1] && str.at(j)!=p[2])
{
end = j;
break;
}
}
str = str.substr(begin,(end-begin+1));
return;
}
void Output(std::string str)
{
std::cout << str << endl;
}
相關推薦
字串反轉——來自華為OJ平臺測試基礎篇
/* * 字串反轉 * 與字元逆序一樣,是同一個程式 * 描述: 寫出一個程式,接受一個字串,然後輸出該字串反轉後的字串。例如: * 知識點: 陣列,指標 * 題目來源: 內部整理 * 練習階段: 初級 * 執行時間限制: 10Se
TR069網管測試華為ITMS平臺(內部測試使用)
ins 內部測試 配置 安裝步驟 sta and ger 虛擬機ip 瀏覽器 聲明:本篇華為ITMS平臺僅用於學習和測試使用,如果需要商用,請購買正版軟件! 原創作品,轉載請註明出處,嚴禁非法轉載或者用於商業目的! email:[email protected] 一.
華為oj 公共字串計算
此題是經典的動態規劃的題:設c[i][j] 表示第一個字串從開始到 i 的位置,和第二個字串從開始到 j 的位置的最長公共字串的長度,那麼我們可以根據題目得知一下條件 1.如果pFirstStr[i+1]==pSecondStr[j+1],那麼c[i+1][j+1]=c[
華為oj 字串萬用字元
本題,其實和分蘋果的題有那麼一丟丟的類似,在此提供兩種能通過的解法(主要就是對於‘*’的處理) 1.這種解法其實是錯誤的,但是也要說說他的思路,對於 ‘*’ 他直接找 ‘*’ 下一個字元是否出現在需要匹配的串中,並且找到那個位置,認為此位置到之前就是‘*’所匹配的內容。
[華為OJ--C++]088-按位元組擷取字串
題目描述:編寫一個擷取字串的函式,輸入為一個字串和位元組數,輸出為按位元組擷取的字串。但是要保證漢字不被截半個,如"我ABC"4,應該截為"我AB",輸入"我ABC漢DEF"6,應該輸出為"我ABC"
華為OJ:字串加解密
題目描述 1、對輸入的字串進行加解密,並輸出。 2加密方法為: 當內容是英文字母時則用該英文字母的後一個字母替換,同時字母變換大小寫,如字母a時則替換為B;字母Z時則替換為a; 當內容是數字時則把該數字加1,如0替換1,1替換2,9替換0; 其他字元不做變化。 3
[華為oj]計算公共字串
#include <iostream> #include <string> using namespace std; int main(){ int getCommonStrLength(string s1,string s2);
華為OJ——字串萬用字元
題目描述 問題描述:在計算機中,萬用字元一種特殊語法,廣泛應用於檔案搜尋、資料庫、正則表示式等領域。現要求各位實現字串萬用字元的演算法。 要求: 實現如下2個萬用字元: *:匹配0個或以上的字元(字元由英文字母和數字0-9組成,不區分大小寫
華為oj 字串個數統計&&數字顛倒&&字串翻轉&&字元逆序&&求int型資料在記憶體中儲存時1的個數
同樣只上程式,都是簡單題 #include<iostream> using namespace std; int main() { int in[128], count = 0; char n,temp[100]; memset(in, 0, sizeo
華為OJ——公共字串計算
公共字串計算 題目描述 題目標題: 計算兩個字串的最大公共字串的長度,字元不區分大小寫 詳細描述: 介面說明 原型: int getCommonStrLength(char * pFirstStr,
【華為OJ】公共字串計算
描述: 計算兩個字串的最大公共字串的長度,字元不區分大小寫。 知識點: 字串,查詢 題目來源: 內部整理 練習階段: 初級 執行時間限制: 10Sec 記憶體限制: 128MByte 輸入: 輸入兩個字串 輸出: 輸出一個整數 將這個整數以字串的形式逆
【華為OJ】字串加密
有一種技巧可以對資料進行加密,它使用一個單詞作為它的密匙。下面是它的工作原理:首先,選擇一個單詞作為密匙,如TRAILBLAZERS。如果單詞中包含有重複的字母,只保留第1個,其餘幾個丟棄。現在,修改過的那個單詞死於字母表的下面,如下所示:A B C D E F G H I J K L M N O P Q
華為oj 字串匹配
用一個數組儲存每個字元出現的個數然後,然後進行判斷就行! #include<iostream> #include<string> using namespace std; int main() { int trans[128]; memset(
華為 oj 簡單密碼破解&&汽水瓶&&刪除字串中出現次數最少的字元&&字串排序
這四道題就不上圖了,因為太簡單,就四道題湊在一起了,應該放在簡單題中。 第一題.這道題只需要注意字母‘Z’時候的轉換,直接上程式碼 #include<iostream> #include<string> using namespace std;
華為OJ:字串排序
採用氣泡排序(穩定排序): 法1: 遇到非字母字元時,處理要小心。 #include<iostream> #include<string> using namespace std; int main() { string s,str;
華為oj:計算字串最後一個單詞的長度,單詞用空格隔開
/* 描述 計算字串最後一個單詞的長度,單詞以空格隔開。 知識點 字串,迴圈 執行時間限制 0M 記憶體限制 0 輸入 一行字串,長度小於128。 輸出 整數N,最後一個單詞的長度。
華為OJ:數字顛倒
ring pan mod ber ack art ava scan end 將數字轉成一個字符串即可了。 import java.util.Scanner; public class convertNumber { public static void main(St
華為OJ 名字美麗度
list tty res mod set 範圍 重載 物聯網 實例 這是一道坑爹的題目,為什麽這麽說,且看我慢慢分析…… 題目例如以下: 給出一個名字,該名字有26個字符串組成,定義這個字符串的“美麗度”是其全部字母“美麗度”的總和。 每一個字母都
未來和安卓系統說再見,華為新手機系統測試、體驗中!
大家都知道,華為已經有自己的海思麒麟晶片了,並且經過這麼多年的研發麒麟的引數已經成為一線處理器。對於華為來說,成為全球智慧手機廠商前三多多少少也有處理器的原因。那麼,大家是否有想過如果華為成為自己研發處理器的公司,自已研發系統的公司,是不是能夠成為硬體軟體一體的生態王者? 好訊息是,華為已經開始測試新的
騎士智慧科技M5310模組連線華為OC平臺實現資料互動
一、實驗目的 使用騎士智慧科技M5310模組加USB轉串列埠,連線到華為OC平臺上,並實現溫溼度資料互動 二、準備工作 硬體:騎士智慧科技M5310模組 + 移動NB卡、USB轉串列埠、天線 軟體:C:\AAA\NBIoT&LoraWAN\騎士智慧科技技