題目描述
開發乙個座標計算工具, a表示向左移動,d表示向右移動,w表示向上移動,s表示向下移動。從(0,0)點開始移動,從輸入字串裡面讀取一些座標,並將最終輸入結果輸出到輸出檔案裡面。
輸入:
下面是乙個簡單的例子 如:
a10;s20;w10;d30;x;a1a;b10a11;;a10;
處理過程:
起點(0,0)
結果 (10, -10)
輸入描述:
一行字串
輸出描述:
最終座標,以,分隔
輸入例子:
a10;s20;w10;d30;x;a1a;b10a11;;a10;
輸出例子:
10,-10
string轉int
std::string str = "123";
int n = atoi(str.c_str());
int轉string
int n = 123;
std::stringstream ss;
std::string str;
ss<>str;
**:
#include
#include
#include
#include
using
namespace
std;
int main()
//debug 檢視input中存放的內容
//for (auto i : input)
// cout << i << endl;
int x = 0, y = 0;
//處理非法輸入
int opt = 0;
for (auto i : input)
else
continue;
}//a10
else
if (i.size() == 3)
else
continue;
}else
continue;
switch (i[0])
}//debug 檢視每一步的移動結果
//cout << x << "," << y << endl;
}cout
<< x << ","
<< y << endl;
input.clear();
}return
0;}
華為機試練習題 9 座標移動
題目 開發乙個座標計算工具,a表示向左移動,d表示向右移動,w表示向上移動,s表示向下移動。從 0,0 點開始移動,從輸入字串裡面讀取一些座標,並將最終輸入結果輸出到輸出檔案裡面。輸入 合法座標為a 或者d或者w或者s 數字 兩位以內 座標之間以 分隔。非法座標點需要進行丟棄。如aa10 a1a y...
華為機試練習題 9 座標移動
題目 開發乙個座標計算工具,a表示向左移動,d表示向右移動,w表示向上移動,s表示向下移動。從 0,0 點開始移動,從輸入字串裡面讀取一些座標,並將最終輸入結果輸出到輸出檔案裡面。輸入 合法座標為a 或者d或者w或者s 數字 兩位以內 座標之間以 分隔。非法座標點需要進行丟棄。如aa10 a1a y...
HDU 1033 座標移動 模擬
題意是說有一點從 300,410 的位置出發,向右移動到 310,410 後開始轉向,a 表示向順時針轉,v 表示向逆時針轉,每次轉向後沿當前方向前進 10 個單位,輸出其座標,再補充一點格式上的東西即可。如果當前要向順時針轉,那麼轉過之後的方向依然無法確定其絕對的上下左右,每次轉向後的方向還與轉向...