我知道如何解决它,但我不能这样做。
如果您输入import React from 'react';
import { Route, Link,withRouter } from 'react-router-dom';
import FourthView from "../fourthview/fourthview.component";
class ThirdView extends React.Component {
constructor(props) {
super(props);
}
componentDidMount() {
}
render() {
console.log(this.props.match.params);
return (
<div className={"boxDiv"}>
<p>Third View</p>
{ console.log(this.props)}
<h1>parameter passed: (#{this.props.params.number})</h1>
</div>
);
}
}
export default withRouter(ThirdView);
,则输出将为(
。如果您输入/
,则输出将为)
。
这意味着如果输入为:\
,则输出必须为:()
。我可以解决它,但如果输入有更多/\
它必须像楼梯一样上升,但如果我有((((
它必须像楼梯那样像金字塔一样。我有解决的想法。输入字符串并使用for和if替换并输出它。我输出正确的字符,但我不能得到“楼梯”输出。如果我输入))))
。输出为(())
,但必须像金字塔一样。
这是我的代码:
//\\
答案 0 :(得分:-1)
不幸的是,没有办法在单个循环中实现这一点,因为您需要知道金字塔的高度(或输入字符串中的'()'的数量)。这是你如何做到的:
#include <iostream>
#include <algorithm>
#include <string>
int main() {
std::string input;
std::cin >> input;
int height = std::count(input.begin(), input.end(), '(');
for ( int i = 0; i < height; ++i )
std::cout << std::string(height - i, ' ') << "/" << std::string(i * 2, ' ') << "\\\n";
return 0;
}
当然,这只是向您展示如何打印金字塔的基础知识。您需要检查输入是否正确('('== number of')',匹配对'((()))'而不是'(())()'等等。