Redian新闻
>
你们那里小学有门卫么?
avatar
你们那里小学有门卫么?# Living
g*n
1
就是打印出成对的括号,比如()(),(()).
我的code是这样,可是结果总是不对,请帮忙看看哪里有问题?谢谢
public void printbrackets(int l, int r, int count){
if(l==count && r==count){
System.out.println("\n");
return;
}
if(lSystem.out.print("(");
printbrackets(l+1, r, count);
}
if(rSystem.out.print(")");
printbrackets(l, r+1, count);
}
}
void main(){
printbrackets(0,0,2);
}
avatar
b*y
2
数学没名额了
avatar
d*0
3
俺这里没有。 进学校要查证件的, 只有中国学校。 还有就是电视里面纽约的学校。
avatar
f*4
4
如果L是1,R是2,这种是不可以的,貌似没有filter掉,你看看是不是。。。
avatar
c*o
6
就是,上次老夫回母校居然不给进,还是中国好
avatar
d*e
7
问题在于用了print,这个不是print结果,而只是在执行过程中print,但同一个print
完就不会print第二次。比如print("(")在print完\n后就不会print第二次。
应该将结果存起来,在你print("\n")那里print完整结果。
public void printbrackets(int l, int r, int count, String result) {
if (l == count && r == count) {
System.out.println(result);
return;
}
if (l < count) {
printbrackets(l + 1, r, count, result + "(");
}
if (r < l) {
printbrackets(l, r + 1, count, result + ")");
}
}
call printbracket(0, 0, n, "")

【在 g********n 的大作中提到】
: 就是打印出成对的括号,比如()(),(()).
: 我的code是这样,可是结果总是不对,请帮忙看看哪里有问题?谢谢
: public void printbrackets(int l, int r, int count){
: if(l==count && r==count){
: System.out.println("\n");
: return;
: }
: if(l: System.out.print("(");
: printbrackets(l+1, r, count);

avatar
b*y
8
re
avatar
a9
9
按道理是应该查的,包括这个学校也有门禁,但根本没人执行。
我去过几次学校,按一下门铃人就把门打开了,连句话都不问。

【在 d**********0 的大作中提到】
: 俺这里没有。 进学校要查证件的, 只有中国学校。 还有就是电视里面纽约的学校。
avatar
g*n
10
这样子,我改了一下,结果正确了,谢谢你。

print

【在 d**e 的大作中提到】
: 问题在于用了print,这个不是print结果,而只是在执行过程中print,但同一个print
: 完就不会print第二次。比如print("(")在print完\n后就不会print第二次。
: 应该将结果存起来,在你print("\n")那里print完整结果。
: public void printbrackets(int l, int r, int count, String result) {
: if (l == count && r == count) {
: System.out.println(result);
: return;
: }
: if (l < count) {
: printbrackets(l + 1, r, count, result + "(");

avatar
b*y
11
拿到词汇账号了
avatar
d*0
12
奶奶的, 哥是进门了。 可是图书馆不让进, 那可是哥一天10小时战斗过的地方啊。。

【在 c****o 的大作中提到】
: 就是,上次老夫回母校居然不给进,还是中国好
avatar
g*n
13
恩,这个special case也没有考虑到。

【在 f********4 的大作中提到】
: 如果L是1,R是2,这种是不可以的,貌似没有filter掉,你看看是不是。。。
avatar
b*y
14
数学没名额了
avatar
c*o
15
“10小时战斗过”- 战斗啥?

。。

【在 d**********0 的大作中提到】
: 奶奶的, 哥是进门了。 可是图书馆不让进, 那可是哥一天10小时战斗过的地方啊。。
avatar
l*e
16
直接给if(rvoid printbrackets(int l, int r, int count){
if(l==count && r==count){
printf("\n");
return;
}
if(lprintf("(");
printbrackets(l+1, r, count);
}
else if(rprintf(")");
printbrackets(l, r+1, count);
}
}

print

【在 d**e 的大作中提到】
: 问题在于用了print,这个不是print结果,而只是在执行过程中print,但同一个print
: 完就不会print第二次。比如print("(")在print完\n后就不会print第二次。
: 应该将结果存起来,在你print("\n")那里print完整结果。
: public void printbrackets(int l, int r, int count, String result) {
: if (l == count && r == count) {
: System.out.println(result);
: return;
: }
: if (l < count) {
: printbrackets(l + 1, r, count, result + "(");

avatar
t*e
18
bso长的像春天里的民工。

【在 c****o 的大作中提到】
: 就是,上次老夫回母校居然不给进,还是中国好
avatar
d*e
19
这样似乎不行,因为当有了第一个“(”的时候,“(”和“)”是并存的case,不应
该用else if.

【在 l***e 的大作中提到】
: 直接给if(r: void printbrackets(int l, int r, int count){
: if(l==count && r==count){
: printf("\n");
: return;
: }
: if(l: printf("(");
: printbrackets(l+1, r, count);
: }

avatar
b*y
20
re
avatar
c*o
21
可能是俺长得嫩,以为是别的学校的学生?

【在 t*****e 的大作中提到】
: bso长的像春天里的民工。
avatar
b*y
22
拿到词汇账号了
avatar
l*a
23
是啊,去学校是要登记,可是登记的地方已经在学校里面了,根本没有意义。。。

【在 a9 的大作中提到】
: 按道理是应该查的,包括这个学校也有门禁,但根本没人执行。
: 我去过几次学校,按一下门铃人就把门打开了,连句话都不问。

avatar
b*y
24
readingeggs加了些名额,还可以参加。
avatar
b*y
25
re
avatar
b*y
26
readingeggs加了些名额,还可以参加。
avatar
b*y
27
re
avatar
b*y
29
re
avatar
b*y
30
加了BeijingMath的团
avatar
b*y
32
re
avatar
b*y
33
加了BeijingMath的团
相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。