알고리즘

    백준 2920 음계

    https://www.acmicpc.net/problem/2920 2920번: 음계 다장조는 c d e f g a b C, 총 8개 음으로 이루어져있다. 이 문제에서 8개 음은 다음과 같이 숫자로 바꾸어 표현한다. c는 1로, d는 2로, ..., C를 8로 바꾼다. 1부터 8까지 차례대로 연주한다면 ascending, 8 www.acmicpc.net public class Boj2920_음계 { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st = new StringTokenizer..

    백준 5585 거스름돈

    https://www.acmicpc.net/problem/5585 5585번: 거스름돈 타로는 자주 JOI잡화점에서 물건을 산다. JOI잡화점에는 잔돈으로 500엔, 100엔, 50엔, 10엔, 5엔, 1엔이 충분히 있고, 언제나 거스름돈 개수가 가장 적게 잔돈을 준다. 타로가 JOI잡화점에서 물건을 사 www.acmicpc.net public class Boj5585_거스름돈 { static int TOTAL = 1000; public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int pay = Integer.parseI..

    백준 11719 그대로 출력하기2

    https://www.acmicpc.net/problem/11719 11719번: 그대로 출력하기 2 입력이 주어진다. 입력은 최대 100줄로 이루어져 있고, 알파벳 소문자, 대문자, 공백, 숫자로만 이루어져 있다. 각 줄은 100글자를 넘지 않으며, 빈 줄이 주어질 수도 있고, 각 줄의 앞 뒤에 공백이 www.acmicpc.net public class Boj11719_그대로출력하기2 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); while (sc.hasNextLine()) { String input = sc.nextLine(); System.out.println(input); } sc.close(); } }

    백준 5598 카이사르 암호

    https://www.acmicpc.net/problem/5598 public class Boj5598_카이사르암호 { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); String str = br.readLine(); for (int i = 0; i < str.length(); i++) { // A, B, C는 X, Y, Z가 나와야하는데 -3을 하면 값이 이상해지므로 23을 더해줌 if(str.charAt(i) - 68 < 0) { // 한 글자씩이며 charAt은 char를 반환하므로 char로 변환해야함. Sy..

    백준 10809 알파벳 찾기

    https://www.acmicpc.net/problem/10809 10809번: 알파벳 찾기 각각의 알파벳에 대해서, a가 처음 등장하는 위치, b가 처음 등장하는 위치, ... z가 처음 등장하는 위치를 공백으로 구분해서 출력한다. 만약, 어떤 알파벳이 단어에 포함되어 있지 않다면 -1을 출 www.acmicpc.net public class Boj10809_알파벳찾기 { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int[] arr = new int[26]; Arrays.fill(arr, -1); // -1..

    백준 2292번 : 벌집 (Python, 파이썬)

    https://www.acmicpc.net/problem/2292 2292번: 벌집 위의 그림과 같이 육각형으로 이루어진 벌집이 있다. 그림에서 보는 바와 같이 중앙의 방 1부터 시작해서 이웃하는 방에 돌아가면서 1씩 증가하는 번호를 주소로 매길 수 있다. 숫자 N이 주어졌 www.acmicpc.net 수열을 이루며, 1, 7, 19, 37 ... 차수가 진행될 때 마다 6씩 늘어나는 수열 입력숫자가 1일 경우 방 1개를 지난다. 1보다 크고 7보다 작거나 같을 경우 방 2개를 지난다. 7보다 크고 13보다 작거나 같은 경우 방 3개를 지난다. import sys input = sys.stdin.readline N = int(input()) first = 1 plus = 6 room = 1 if N ==..

    백준 1157 단어공부

    https://www.acmicpc.net/problem/1157 Solution public class Boj1157_단어공부 { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); int[] arr = new int[26]; // 영문자의 갯수 26 /* 해당 알파벳이 나오면 영문자의 배열 값을 1씩 증가시킨다. * */ String s = br.readLine(); /** 대문자의..

    [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의 소..