알고리즘/이것저것
팰린드롬 판단하기
첫 번째 for문은 공백과 마침표를 걸러내기 위한 for문 그리고 두 번째 for문은 len/2 앞까지만 확인하고 앞뒤로 확인하여 다르다면 false 이상 없으면 true를 반환 boolean solution(String sentence){ String str = ""; for(int i = 0; i < sentence.length(); i++){ char c = sentence.charAt(i); if(c != ' ' && c != '.') str += c; } int len = str.length(); for(int i = 0; i < len / 2; i++){ if(str.charAt(i) != str.charAt(len - 1 - i)) return false; } return true; }
369게임의 박수의 갯수 구하기
이미 다 작성된 코드에 if문만 내가 작성한거임. while문으로 저렇게 박수 횟수를 구할 생각을 못했을거 같음 public int solution(int number) { int count = 0; for (int i = 1; i
[python] 효율적인 소수 판별
import math def isPrime2(n): # To-do # [실습2]의 코드를 더 효율적으로 발전시켜보세요! if n == 2 or n == 3: return True if n % 2 == 0 or n == 1: return False for i in range(3, int(math.sqrt(n))+1, 2): if n % i == 0: return False return True # 결과 출력을 위한 코드입니다. 자유롭게 값을 바꿔보며 확인해보세요. print(isPrime2(1))
[Python] 소수 판별
1234567891011121314151617def isPrime(n): # To-do - pass는 지우고 코드를 작성해주세요. # 1. n이 1인 경우, False를 반환 if n
[Python] 소인수분해
# n 보다 작은 모든 소수의 리스트를 반환 def eratosthenes(n): sieve = [True] * n for i in range(2, n): if sieve[i] == True: for j in range(i+i, n, i): sieve[j] = False return [ i for i in range(2,n) if sieve[i] == True] def primeFactor(n): # n과 같거나 작은 모든 소수를 원소로 가지는 리스트 생성 l = eratosthenes(n+1) # l에 담긴 각 소수가 n의 소인수인지 확인해봅니다. i = 0 result = [] while i < len(l): # To-do - pass는 지우고 코드를 작성해주세요. # 1. 만약 현재 소수가 n의 소..
[Python] n번째 소수 찾기
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 def nthPrime(n): # To-do # 충분히 큰 크기(1000000 정도)를 가진 리스트를 생성하고 # 에라토스테네스의 체를 사용해 n번째의 소수를 찾아 반환하세요. a = [False, False] + [True] * 999998 Primes = [] for i in range(2, 999998): if a[i]: Primes.append(i) for j in range(i+i, 999998, i): a[j] = False return Primes[n-1] # 결과 출력을 위한 코드입니다. 자유롭게 값을 바꿔보며 확인해보세요. print(nthPrime(1)) cs