하루종일 숙제만 했네...
input = 20
def find_prime_list_under_number(number):
number_list = []
for all in range(number):
number_list.append(all+1)
number_list.remove(1)
prime_list = []
for start in number_list:
count = 0
for div in range(2, start+1):
if start % div == 0:
count += 1
if count == 1:
prime_list.append(start)
return prime_list
result = find_prime_list_under_number(input)
print(result)
=> 처음에는 number_list.remove를 이용해 출력하려고 했지만, 도움을 요청했더니 디버그기능을 이용해서 어떤 부분에서 오류가 나고 있는지 알려주셨고, number_list에서 요소가 빠진 다음에 리스트가 당겨지면서 오류가 난다고 알려주셔서 새로운 리스트에 소수들만 넣어주는 코드로 바꿨더니 해결되었다..!
input = "011110"
def find_count_to_turn_out_to_all_zero_or_all_one(string):
n = len(string)
count_zero = 0
count_one = 0
if string[0] == '0':
count_zero += 1
elif string[0] == '1':
count_one += 1
for i in range(n-1): #i+1을 해주기 떄문에
if string[i] != string[i + 1]:
if string[i+1] == '0':
count_zero += 1
elif string[i+1] == '1':
count_one += 1
return min(count_one, count_zero)
result = find_count_to_turn_out_to_all_zero_or_all_one(input)
print(result)
+파이썬의 배열은 링크드 리스트로 쓸 수도 있고, 배열로도 쓸 수 있게 만든 효율적인 자료구조!