writtensnow   8달 전

처음 문제는 C++로 먼저 풀었습니다. 후에 Java 공부를 해보면서 다음 문제를 Java코드로 수정해서 풀어보았는데요,

C++ 코드와는 다르게 재귀함수 부분에서 조건식을 n > 1이 아닌 n >= 1로 바꿔야만 정답이 되는 이유를 잘 모르겠습니다. (C++은 n > 1, n >= 1 둘다 정답이 나왔습니다.)

위 코드가 Java로 푼 코드이고, 아래 코드가 C++로 푼 부분입니다. 고수님들의 조언 부탁드립니다..!

( 자바 공부를 시작한지 별로 되지 않아 문법이 조금 틀렸을 수도 있습니다. 양해 부탁드립니다.)

toonraon   8달 전

말씀하신 부분 말고 java에서 30번째 줄이랑 c++에서 75~78번째 줄이 다른 건 일부러 그렇게 하신 건가요? 제 생각엔 저거 때문일 거 같습니다.

저 부분을 양쪽 다 똑같이 하면 자바에서도 n >= 1 대신 n > 1로 해도 똑같을 것 같아요.

추가적으로 zfunc이 인스턴스 함수라서 지금 자바에서 zfunc 호출 하실 때 굳이 new Main() 하신 다음에 z.func을 하셨는데 zfunc을 인스턴스 함수로 하지 말고

public static int zfunc으로 해서 zfunc를 클래스 함수로 만드는 게 main() 함수 안에서 zfunc을 호출할 때 굳이 new Main() 한 다음에 z.zfunc()할 필요 없이 바로 zfunc(n, r, c)로 호출할 수 있어서 그게 더 편하기도 하고 좀 더 효율적이고 일반적인 방식이라고 할 수 있습니다.

writtensnow   8달 전

감사합니다..ㅠㅠ 글을 적을땐 미처 생각치 못했었네요...

좋은 정보 알려주셔서 정말 감사합니다!

댓글을 작성하려면 로그인해야 합니다.