波兰字母表

描述:

波兰字母表中有32个字母,其中元音9个,辅音23个。

ą -> a,
ć -> c,
ę -> e,
ł -> l,
ń -> n,
ó -> o,
ś -> s,
ź -> z,
ż -> z

通过这些区分标记,请将字符串中的波兰字母替换为英文字母。

例如:

输入: “Jędrzej Błądziński”

输出: “Jedrzej Bladzinski”

MyCode:

function correctPolishLetters (string) {
  var dict = {'ą':'a','ć':'c','ę':'e','ł':'l','ń':'n','ó':'o','ś':'s','ź':'z','ż':'z'};
  return string.replace(/[ąćęłńóśźż]/g, x => dict[x]);
}

CodeWar:

var polishLetters = {
    "ą": "a",
    "ć": "c",
    "ę": "e",
    "ł": "l",
    "ń": "n",
    "ó": "o",
    "ś": "s",
    "ź": "z",
    "ż": "z",
};

function correctPolishLetters (string) {
  return string.split('').map((c) => polishLetters[c] || c).join("");
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
波兰表达式是一种数学表达式的表示方法,它将操作符放在操作数后面。例如,表达式 (1 + 2) * 3 可以表示为 1 2 + 3 *,其中加号和乘号都放在操作数后面。这种表示方法可以方便地进行计算,因为它避免了括号的使用和操作符的优先级问题。 以下是一个 C++ 实现逆波兰表达式求解的示例代码: ```cpp #include <iostream> #include <stack> #include <string> #include <cmath> using namespace std; bool isOperator(string s) { return s == "+" || s == "-" || s == "*" || s == "/"; } double calculate(string op, double num1, double num2) { if (op == "+") { return num1 + num2; } else if (op == "-") { return num1 - num2; } else if (op == "*") { return num1 * num2; } else if (op == "/") { return num1 / num2; } return 0; } double evaluate(string expression) { stack<double> st; string token; size_t pos = 0; while ((pos = expression.find(" ")) != string::npos) { token = expression.substr(0, pos); if (isOperator(token)) { double num2 = st.top(); st.pop(); double num1 = st.top(); st.pop(); double result = calculate(token, num1, num2); st.push(result); } else { double num = stod(token); st.push(num); } expression.erase(0, pos + 1); } return st.top(); } int main() { string expression = "5 1 2 + 4 * + 3 -"; double result = evaluate(expression); cout << "Result: " << result << endl; return 0; } ``` 在上面的代码中,我们首先定义了两个辅助函数:isOperator 和 calculate。isOperator 用于判断一个字符串是否是操作符,calculate 用于计算两个操作数之间的结果。然后我们定义了一个 evaluate 函数,该函数接收一个逆波兰表达式作为输入,然后使用一个栈来计算表达式的值。在表达式中,每个操作符和操作数都以空格隔开,我们使用 string 类型的 find 和 substr 函数来逐个读取输入的表达式,并将操作符和操作数推入栈中。如果当前的字符串是一个操作符,我们就从栈中弹出两个操作数,并使用 calculate 函数计算结果,然后将结果推入栈中。最后,当表达式处理完成时,栈中只剩下一个元素,该元素就是表达式的值,我们将其返回即可。 在主函数中,我们定义了一个逆波兰表达式,并调用 evaluate 函数来计算表达式的值。这个表达式的意义是:先计算 1+2,然后将结果乘以 4,再加上 5,最后减去 3,得到的结果应该是 14。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值