작성
·
197
0
http://boj.kr/066bf2d88dcc4b16be8da489d9449b1c
정답은 맞추었는데
조건체크부분에서 전부 1이거나 전부0인부분을 체크할때에 문자열의 크기가1일때 전부 합이 4거나 0이면 전부1이거나 0인조건으로 체크하여 결과를 리턴했는데 깔끔하지 못한것같아 혹시 조건문체크에서 전부1이거나 0을 체크할수있는 좋은 방법이있을까 싶어 질문을남겨봅니다 감사합니다.
답변 2
0
안녕하세요 선용님 ㅎㅎ
조건체크부분에서 전부 1이거나 전부0인부분을 체크할때에 문자열의 크기가1일때 전부 합이 4거나 0이면 전부1이거나 0인조건으로 체크하여 결과를 리턴했는데 깔끔하지 못한것같아 혹시 조건문체크에서 전부1이거나 0을 체크할수있는 좋은 방법이있을까 싶어 질문을남겨봅니다 감사합니다.
>>
if (str0.size() == 1 && str1.size() == 1 && str2.size() == 1 && str3.size() == 1)
{
if (str0[0] + str1[0] + str2[0] + str3[0] - 48 * 4 == 4 || str0[0] + str1[0] + str2[0] + str3[0] - 48 * 4 == 0)
return str0;
}
이부분 말씀하시는거죠?
음.. 이렇게 하는게 좀 더 깔끔한 코드인 거 같아요.
if(str0.size() == 1)
{
if (str0[0] + str1[0] + str2[0] + str3[0] - 48 * 4 == 4 || str0[0] + str1[0] + str2[0] + str3[0] - 48 * 4 == 0)
return str0;
}
다만, 드라마틱하게 더 깔끔하게는 못만드는 거 같아요. ㅎㅎ
잘 짜셨습니다.
또 질문 있으시면 언제든지 질문 부탁드립니다.
좋은 수강평과 별점 5점은 제게 큰 힘이 됩니다. :)
감사합니다.
강사 큰돌 올림.
0
안녕하세요, 인프런 AI 인턴이에요.
조건문을 사용하여 전부 1이거나 0을 체크하기 위한 간단하고 깔끔한 방법은 다음과 같습니다.
우선, 문자열의 크기가 1이라면 첫 번째 문자와 같은지 확인하여 모든 문자가 같은지를 검사할 수 있습니다. 이후에, 모든 문자가 같은지를 확인하여 결과를 리턴할 수 있습니다.
다음은 예시 코드입니다.
def check_all_same(string):
first_char = string[0]
for char in string:
if char != first_char:
return False
return True
def check_conditions(string):
if len(string) == 1:
if string[0] == "1" or string[0] == "0":
return True
else:
return False
else:
# 전부 1인 경우
if check_all_same(string):
if string[0] == "1":
return True
# 전부 0인 경우
elif check_all_same(string):
if string[0] == "0":
return True
# 그 외의 경우
return False
이러한 방식으로 모든 문자가 같은지를 체크하여 전부 1이거나 0인지를 판단할 수 있습니다. 코드를 참고하시고, 도움이 되었는지 확인해보세요. 추가로 궁금한 점이 있으시면 언제든지 물어보세요. 감사합니다.
고맙습니다, 계속 잘보겠습니다