国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C++ > 正文

[華為OJ--C++]016-坐標移動

2019-11-08 02:04:52
字體:
來源:轉載
供稿:網友

題目描述:

開發一個坐標計算工具, A表示向左移動,D表示向右移動,W表示向上移動,S表示向下移動。從(0,0)點開始移動,從輸入字符串里面讀取一些坐標,輸出最終結果

輸入:

合法坐標為A(或者D或者W或者S) + 數字(兩位以內)

坐標之間以;分隔。

非法坐標點需要進行丟棄。如AA10;  A1A;  $%$; YAD; 等。

下面是一個簡單的例子如:

A10;S20;W10;D30;X;A1A;B10A11;;A10;

處理過程:

起點(0,0)

+  A10   =  (-10,0)

+  S20   =  (-10,-20)

+  W10  =  (-10,-10)

+  D30  =  (20,-10)

+  x   =  無效

+  A1A   =  無效

+  B10A11   =  無效

+  一個空 不影響

+  A10  =  (10,-10)

 

結果(10, -10)

輸入描述:一行字符串

輸出描述:最終坐標,以,分隔

輸入例子:A10;S20;W10;D30;X;A1A;B10A11;;A10;

輸出例子:10,-10

算法實現:

#include<iostream>  #include<string>using namespace std;    //************************************************    // * Author: 趙志乾    // * Date: 2017-2-20     // * Declaration: All Rigths Reserved !!!    //***********************************************/  bool IsNumber(char c){	return c>='0'&&c<='9';} bool IsInstruct(string&ret,int&len){	for(int i=0;i<ret.length();i++)	{		if(ret[i]==' ')			continue;		if(!IsNumber(ret[i]))			return false;		else			len=len*10+ret[i]-'0';	}	if(len>99)		return false;	return true;}int main()  {      string initstr;	getline(cin,initstr);	int strlength=0;	for(int i=0;i<initstr.length();i++)	{		if(initstr[i]!=' ')		{			initstr[strlength++]=initstr[i];		}	}	string instr=initstr.substr(0,strlength);	int x=0,y=0;	int index=0;	for(int i=0;i<instr.length();i++)	{		if(instr[i]==';')		{			if(i-index<2)			{				index=i+1;				continue;			}							string ret=instr.substr(index,i-index);			int len=0;			switch(ret[0])			{				case 'A':				case 'a':					if( IsInstruct(ret.substr(1,ret.length()-1),len) )							  x=x-len;							  break;				case 'D':				case 'd':					if( IsInstruct(ret.substr(1,ret.length()-1),len) )							  x=x+len;							  break;				case 'W':				case 'w':					if( IsInstruct(ret.substr(1,ret.length()-1),len) )							  y=y+len;							  break;				case 'S':				case 's':					if( IsInstruct(ret.substr(1,ret.length()-1),len) )							  y=y-len;							  break;			}			index=i+1;		}			}	cout<<x<<','<<y<<endl;    return 0;  }  


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 安吉县| 时尚| 鹰潭市| 稻城县| 安化县| 沂南县| 尖扎县| 宁河县| 吉林市| 宜章县| 冕宁县| 赫章县| 紫金县| 临潭县| 措美县| 广昌县| 四子王旗| 涞水县| 德格县| 镶黄旗| 崇州市| 航空| 正阳县| 牟定县| 孝昌县| 射洪县| 尼玛县| 竹北市| 和顺县| 高淳县| 金堂县| 张家界市| 乌鲁木齐市| 汕尾市| 郓城县| 通州区| 虎林市| 青神县| 石泉县| 顺义区| 咸阳市|