본문 바로가기

반응형

Projects

(71)
자바로 텍스트 게임 만들기 package tutorials; import java.util.Random; import java.util.Scanner; public class Main { public static void main(String[] args) { // System objects Scanner in = new Scanner(System.in); Random rand = new Random(); // Game variables String[] enemies = {"Skeleton", "Zombie", "Warrior", "Assassin"}; int maxEnemyHealth = 75; int enemyAttackDamage = 25; // Player variables int health = 100; int attac..
백준 10871번 자바 문제 List ArrayList 3가지 방식으로 문제를 풀어봤다. 리스트에 원소가 추가되는 방식을 이 문제를 풀면서 배웠다. 리스트를 만들 때는 데이터타입 리스트명[] = new 데이터타입[데이터크기]; 인덱스로 데이터를 가져올 때는 리스트명[인데스번호] import java.util.Scanner; public class Main { public static void main(String[] args) { //문제 //정수 N개로 이루어진 수열 A와 정수 X가 주어진다. //이때, A에서 X보다 작은 수를 모두 출력하는 프로그램을 작성하시오. // //입력 //첫째 줄에 N과 X가 주어진다. (1 ≤ N, X ≤ 10,000) // //둘째 줄에 수열 A를 이루는 정수 N개가 주어진다. //주어지는 정수는 모두 1보다 크거나 같고, ..
백준 2439번 자바 문제 package bj2439; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int N = sc.nextInt(); sc.close(); // 가장 큰 틀의 반복문을 구상한다. // 여기서 i는 출력횟수 즉, 행의 숫자를 나타낸다. // i번 출력할 것이라는 것이다. for (int i = 1; i
백준 11022번 자바 문제 BufferedReader를 사용하는 것이 익숙해져서, 이렇게도 풀수는 있는데, 과연 메모리를 줄이는 것만이 능사일까라는 생각이 든다. 다른 사람들이 제출한 코드길이와 비교해보면 월등히 길어질 뿐만 아니라, 이상하게도 스캐너와 프린터라인 기능을 사용한 사람들의 메모리 사용량과 시간이 훨씬 더 작고 짧았다. 꼭 필요한 것이 아니라면 가장 단순하게 가는 것이 좋을 것 같기는 하다. import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.util.StringTok..
백준 2742번 자바 문제 for문과 while문의 활용 동일하게 BufferedReader와 BufferedWriter를 사용해서 문제를 풀어봤다. 문제 자체는 이전 문제와 시작점과 종료지점만 반대로 지정해주면 되는 거라 쉬웠고, 다만, while문을 사용해보지 않아서 while문을 활용해서도 다시 풀어보았다. import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStreamWriter; public class Main { public static void main(String[] args) throws IOException { BufferedReader ..
백준 2741번 자바 문제 N 찍기 코딩을 하면서 배우는 부분인데, 정답은 있더라도, 정답으로 나아가는데 있어서는 참 다양한 방법이 있다는 것이다. 어떤 방식을 사용해야 할 것인가는 상황에 따라서 달라지겠지만, 현재까지 내가 공부한 바로는 어쨌든 메모리를 줄이고, 빠르게 동작하는 방식을 취하는 것이 좋다는 것이다. 이번 문제에서도 가장 간편한 코딩으로는 Scanner와 System.out.println을 사용하는 것이었지만, Bufferedreader와 BufferedWriter를 사용하므로써 효율성을 증대시킬 수 있다. import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in);..
백준 15552번 자바 문제 Buffered import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.util.StringTokenizer; public class Main { public static void main(String[] args) throws IOException { // Scanner와 println을 이렇게 대체한다고 보면 된다. BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); BufferedWrite..
백준 8393번 자바 문제 등차수열의 합 정수 n이 주어졌을 때 1~n번까지 더하는 문제. 등차수열의 합 공식을 사용해서 $$\sum = \frac{n(n-1)}{2}$$ 답을 구했다. 다만 for문 관련 문제로 분류되어 있으므로, for문으로도 구현해봤다. import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); System.out.println(n*(n+1)/2); } } import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner ..

반응형