문제. 주어진 IPv4주소(문자열)가 적합한지 확인하는 코드를 작성하세요. • IPv4 주소는 점-십진법으로 정규화되어 표현되며, 이는 0부터 255까지의 네 개의 십진수로 구성되며, 각 숫자는 점으로 구분됩니다. 예를 들어, 172.16.254.1과 같습니다. • 유효한 IPv4 주소는 x1.x2.x3.x4 형태이며, 여기서 0 ≤ (x1, x2, x3, x4) ≤ 255 입니다. 따라서, IPv4 주소의 일반화된 형태를 (0- 255).(0-255).(0-255).(0-255)로 쓸 수 있습니다. 코드. str = '222.151.11.141' str_list= list(str) result_list=[] result_str='' for item in str_list: if item == '.': r..
분류 전체보기
문제. 괄호가 올바른지 확인 하고, 올바른 괄호가 몇개가 있는지 출력을 하면 된다. 코드 class Stack: def __init__(self) -> None: self.item = [] def is_empty(self): return not self.item def push(self, item) -> None: self.item.append(item) def pop(self): return self.item.pop() def reverse_pop(self): return self.pop() def peek(self): return self.item[-1] def test_brackets(str): str_string = ''.join(char for char in str if char in '(){}..
문제 주어진 문자열에서, 가장 긴 반복된 문자가 없는 substring의 길이를 구하시오. 입출력 예시1: Input: str = “Appleismyfavorite” Output: 12. (pleismyfavor) 코드 str = 'Appleismyfavorite' str_list = list(str) # 입력받은 문자열을 리스트로 변환하여 저장. str_string="" result_list=[[]] # 서브 스트링을 리스트 안 리스트로 저장. str_dic={} i=0 while i < len(str_list): #for i in range(len(str_list)) : if str_list[i] in str_dic: # 인덱스에서 가지고온 문자가 딕션어리에 있으면, 중복됨으로 조건에 부합x resu..
문제 Given two words, check whether one word is a rotated version of another. 두개의 단어가 주어졌을 때, 하나의 단어가 다른 하나의 “회전된” 변형인지를 체크하세요 입출력 예시1: Input: word1 = “Apple” , word2 = “leApp 입출력 예시2: Input: word1 = “Apple” word2 = “ppleA" Output: True 코드 word1 = "Aeplp" word2 = "leApp" word1_list = list(word1) word2_list = list(word2) dic={} dic2={} '''for char,char2 in zip(word1_list,word2_list): if char not in..
Pangram이란? 팡그램(pangram)"은 특정 알파벳이나 문자를 모두 포함하는 문장이나 문단을 나타냅니다. 주로 모든 알파벳을 최소한 한 번 사용하여 문장을 구성하는 경우를 의미합니다. 즉 현 문제에서는 a~z까지 알파벳이 문장에 모두 들어가야함. 문제 주어진 문자열이 Pangram인지 체크하세요 입출력 예시1: Input: str = “John quickly extemporized five tow bags.” Output: True 코드. str = "qwertyuiopasdfghjklzxcvbnm" #pangram = [''.join(char.lower() for char in str if char.isalnum())] #.join()을쓰면 문자열을 합쳐서 리스트에 넣어짐으로 생략 #['john..
문제 단어 리스트와 그 뒤에 이어지는 두 개의 단어가 주어졌을 때, 주어진 두 단어 사이의 최소 거리를 해당 단어 리스트에서 찾으세요. 입출력 예시) Input: S = [ “Apple”, “Banana”, “Apple”, “Cherry”, “Grape”] word1 = “Apple” word2 = “Grape” Output: 2 코드 S = ["Apple", "Grape", "Apple", "Cherry", "Grape"] word1 = "Apple" word2 = "Grape" distace=[] count=0 for item in S: count+=1 if item ==word1: count=0 elif item ==word2: distace.append(count) distace.sort() pr..
Anagrams란? 문자를 어떻게 배열해도 서로 같은 단어들을 말 한다. 예를들면, ate,eat 과 같은 관계이다. 문제. 주어진 문자열 배열 strs에서 애너그램을 그룹화하라. 답은 아무 순서로나 반환해도 된다. 애너그램이란 다른 단어나 문구의 문자를 재배열하여 일반적으로 모든 원래 문자를 정확히 한 번 사용하여 형성된 단어나 문구를 의미한다. 코드 def anagrams(strs)->list: anagramsdict={} #정렬되어진 단어를 키값으로 쓰는 사전생성 for word in strs: # 리스트 안에 단어를 하나씩 전부 가지고옴. sorted_word = ''.join(sorted(word)) # 정렬을 하면 한글자 한글자 리스트로 반환이 되어서 join사용 if sorted_word i..
문제. 주어진 문자열 paragraph과 금지된 단어들의 문자열 배열 banned이 있습니다. 금지된 단어가 아닌 가장 빈번하게 나타나는 단어를 반환하세요. 적어도 하나의 금지되지 않은 단어가 있으며, 답은 유일함이 보장됩니다. paragraph에 포함된 단어들은 대소문자를 구분하지 않으며, 답은 소문자로 반환되어야 합니다. 코드. def find_value(count_words ,value )->list: many_word=[] for keys,values in count_words.items(): if values == value: many_word.append(keys) return many_word str_input = "Bob hit a ball, the hit BALL flew far afte..