1. 문자열을 철자 하나씩 끊어 리스트로 저장하기 [코드] s = "Hello" print(list(s)) [결과화면] ['H', 'e', 'l', 'l', 'o'] 2. 리스트의 원소를 문자열로 바꿔 출력하기(join 사용) [코드] l = ['a','b','c'] s1 = ','.join(l) print(s1) s2 = '-'.join(l) print(s2) [결과화면] a,b,c a-b-c 3. 리스트 역순으로 접근하기 ([::-1] 사용) [코드] l = [0,1,2,3] for i in l[::-1]: print(i) [결과화면] 3 2 1 0 4. 리스트 초기화 [코드] list = [0 for _ in range(10)] [결과화면] [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
1. 입력받은 문자열을 한문자씩 잘라 한 줄에 한 문자씩 분리하기 s = input() for c in s: print("'"+c+"'")
1. 사용자 입력받기 - input을 사용한다 >>> a = input() Hello World >>> a Hello World - 입력받을시 안내문구 혹은 질문을 넣고 싶을 때 >>> a = input("문자열을 입력하세요: ") 문자열을 입력하세요: 출력된 문구 뒤에 입력하면 된다. 2. 값 여러개 출력 - 파이썬에서 변수/값을 콤마로 구분해 프린트하면 각 값이 공백으로 띄워져 출력된다. >>> print('Hello', 'Im') Hello Im - 변수들 사이에 특정 문자/문자열을 넣어 출력하고 싶을때는 sep를 이용한다. >>> print(1,2,3,sep=', ') 1, 2, 3 >>> print('Hello', 'World', sep='') HelloWorld 3. print 사용시 개행되지..
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 import java.util.*; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); String word = sc.nextLine(); int[] alpha = new int[26];//알파벳 Arrays.fill(alpha, 0); //초기화 for(int i=0; i='a') //소문자 alpha[a-'a']++; else alpha[a-'A']++; } int max = 0; i..
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 import java.util.*; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int t = sc.nextInt(); int num[] = new int[t]; int max = Integer.MIN_VALUE; for (int i = 0; i = max) max = num[i]; } int dp[] = new int[max]; if (max == 1) { System.out.println(1); } else ..
import java.util.*; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); String a = sc.nextLine(); String[] n = a.split(" "); int num1 = Integer.parseInt(n[0]); int num2 = Integer.parseInt(n[1]); int num3 = Integer.parseInt(n[2]); if(num1>=num2) { if(num1>=num3) {//num1이 최대 if(num2>=num3)//num1>num2>num3 System.out.println(num2); else //num1>num3>num2..
하노이탑은 대표적인 분할정복 문제이다. n개의 원반을 이동시키는 문제는 n-1개의 원반을 이동시키는 문제로 세분화시킬 수 있고, 이를 반복하다보면 1개의 원반을 옮기는 것과 같다는 이론이다. 원반이 1개일 경우 그림으로 나타내면 다음과 같다. 즉 system.out.println(a+" "+c); 이다 원반이 2개일 경우 이때는 n-1개의 원반을 b로 옮기고(1단계), a에 있는 1개의 원반을 c로 옮긴 후(2단계), 나머지 n-1을 c로 옮긴다. n이 어떤 수가 되든 이 과정을 반복하면 이동하는 횟수와 과정을 구할 수 있다. 참고)처음엔 하노이 탑의 옮긴 총 횟수가 2^n이기 때문에 pow함수를 써서 출력했는데 바로 시간초과가 뜨는 바람에 StringBuilder를 이용해 함수가 불릴때마다 출력 할 문..
1 2 3 4 5 6 7 8 9 10 11 public class Main { public static void main(String[] args) { System.out.println("\\ /\\"); System.out.println(" ) ( ')"); System.out.println("( / )"); System.out.println(" \\(__)|"); } }
10개씩 끊어 출력하기 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 import java.util.Scanner; public class Main{ public static void main(String args[]){ Scanner sc = new Scanner(System.in); String a = sc.next(); for(int i=0;i
숫자의 합 import java.util.Scanner; public class Main { public static void main(String args[]){ Scanner sc = new Scanner(System.in); int n = sc.nextInt(); String a = sc.next(); int sum=0; for(int i=0;i