Stay Hungry Stay Foolish

전체 글 430

[자바 기초] 04. 반복문(while/do-while/break/continue/for)

반복문 while문 do-while문 break continue for문 중첩 반복문 🔘 while문 while문은 조건에 따라 코드를 반복해서 실행할 때 사용한다. 형식 while (조건식) { // 코드 } 조건식이 참이면 코드 블럭을 실행하고, 이후에 코드 블럭이 끝나면 다시 조건식 검사로 돌아가서 조건식을 검사한다. 조건식이 거짓이면 while문을 벗어난다. (거짓일 때까지 무한반복) 예제 - while문을 사용하여 1을 한 번씩 더해서 총 3번 더하는 프로그램을 작성한다. While1_2 package loop; public class While1_2 { public static void main(String[] args) { int count = 0; while (count < 3) { cou..

BOJ 10101번 : 삼각형 외우기 (Python, Java/구현/Bronze 4)

10101번: 삼각형 외우기 문제의 설명에 따라 Equilateral, Isosceles, Scalene, Error 중 하나를 출력한다. www.acmicpc.net 설명 세 각의 크기가 모두 60이면, Equilateral 세 각의 합이 180이고, 두 각이 같은 경우에는 Isosceles 세 각의 합이 180이고, 같은 각이 없는 경우에는 Scalene 세 각의 합이 180이 아닌 경우에는 Error 를 출력하는 프로그램을 작성하시오. Solution Java import java.util.*; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int a, b, c; a = ..

[자바 기초] 03. 조건문(if/else if/switch/삼항 연산)

조건문 if문 switch문 🔘 if문 if 문은 특정 조건이 참인지 확인하고, 그 조건이 참( true )일 경우 특정 코드 블록을 실행한다. 형식 if (condition) { // 조건이 참일 때 실행되는 코드 } 예제 - 나이가 18세 이상일 경우 "성인입니다." 라는 문구를 출력하고, 18세 미만일 경우 "미성년자입니다."라는 문구를 if문을 사용해서 출력하라. 변수는 age라고 하고 초기값은 20으로 한다. If1 package cond; public class If1 { public static void main(String[] args) { int age = 20; if(age >= 18){ System.out.println("성인입니다."); } if(age = 18) - 참 두 번째 i..

BOJ 2752번 : 세수정렬 (Python, Java/구현/Bronze 4)

2752번: 세수정렬 정수 세 개가 주어진다. 이 수는 1보다 크거나 같고, 1,000,000보다 작거나 같다. 이 수는 모두 다르다. www.acmicpc.net 설명 정수 세 개가 주어지면, 이를 오름차순으로 정렬하여 출력해야 한다. 풀이 sort() 메소드를 사용 Solution Java import java.util.*; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int[] num = new int[3]; for(int i = 0; i < 3; i++) { num[i] = sc.nextInt(); } Arrays.sort(num); for(int i = 0; i < ..

BOJ 3003번 : 킹, 퀸, 룩, 비숏, 나이트, 폰 (Python, Java/구현/Bronze 5)

3003번: 킹, 퀸, 룩, 비숍, 나이트, 폰 첫째 줄에 동혁이가 찾은 흰색 킹, 퀸, 룩, 비숍, 나이트, 폰의 개수가 주어진다. 이 값은 0보다 크거나 같고 10보다 작거나 같은 정수이다. www.acmicpc.net 설명 체스는 총 16개의 피스를 사용하며, 킹 1개, 퀸 1개, 룩 2개, 비숍 2개, 나이트 2개, 폰 8개로 구성되어 있다. 동혁이가 발견한 흰색 피스의 개수가 주어졌을 때, 몇 개를 더하거나 빼야 올바른 세트가 되는지 구하는 프로그램을 작성하시오. 입력은 동혁이가 찾은 흰색 킹, 퀸, 룩, 비숍, 나이트, 폰의 개수가 주어진다. 출력은 첫째 줄에 입력에서 주어진 순서대로 몇 개의 피스를 더하거나 빼야 되는지를 출력한다. 만약 수가 양수라면 동혁이는 그 개수 만큼 피스를 더해야 하..

[자바 기초] 02. 연산자(Operator)

연산자 종류 산술 연산자 : +, -, *, /, % (나머지 연산자) 증감(증가 및 감소) 연산자 : ++, -- 비교 연산자 : == , != , > , = , , >>> ) 비교 연산자 ( = , instanceof ) 등식 연산자 ( == , != ) 비트 연산자 ( & , ^ , | ) 논리 연산자 ( && , || ) 삼항 연산자 ( ? : ) 대입 연산자 ( = , += , -= , *= , /= , %= 등등) Operator3 package operator; public class Operator3 { public static void main(String[] args) { int sum1 = 1 + 2 * 3; // 1 + (2 * 3) int sum2 = (1 +..

[Git Bash Error] ! [rejected] master -> master (fetch first) git push 에러

Git Bash에서 commit을 하고 push를 하려는데!! 제목과 같은 에러가 났다. ❓원인 원격 저장소에서 Reame.md 파일을 변경했기 때문이다. ※ 원격 저장소는 보통 깃허브에 있는 저장소를 말하고, 로컬 저장소는 자신의 컴퓨터에 저장된 저장소를 말한다. 깃허브에서 Readme.md파일을 수정하면 깃허브에서는 변경이 되어 있지만, 프로그램 내의 Readme.md파일은 수정되어 있지 않다. 원격에서 파일을 변경했으면 로컬에서도 변경이 되어야 하는데 안 되어 있다. 동기화가 안 돼서 사용자가 직접 해주어야 한다. ❗해결 방법 1. repository를 가져온다. git pull master origin 2. 다시 push를 한다. git push -u origin master 혹은 git push..

TIL 2024.03.19

BOJ 4999번 : 아! (Python, Java/구현/Bronze 5)

4999번: 아! 입력은 두 줄로 이루어져 있다. 첫째 줄은 재환이가 가장 길게 낼 수 있는 "aaah"이다. 둘째 줄은 의사가 듣기를 원하는 "aah"이다. 두 문자열은 모두 a와 h로만 이루어져 있다. a의 개수는 0보다 크거 www.acmicpc.net 설명 재환이는 집에서 자신이 얼마나 길게 "aah"를 낼 수 있는지 알아냈고, 자기가 소리낼 수 있는 길이의 "aah"를 요구하는 의사를 방문하려고 한다. 입력은 두 줄로 이루어져 있다. 첫째 줄은 재환이가 가장 길게 낼 수 있는 "aaah"이다. 둘째 줄은 의사가 듣기를 원하는 "aah"이다. 재환이가 낼 수 있는 "aah"의 길이와 의사가 요구하는 길이가 주어진다. 이때, 그 병원에 가야하는지 말아야하는지를 알아내는 프로그램을 작성하시오. 두 문..

[자바 기초] 01. 변수(Variable)

package(패키지) 패키지는 자바 파일을 구분하기 위한 폴더이다. 해당 패키지에 들어가는 자바 파일 첫줄에는 'package 패키지명;' 과 같이 소속된 패키지를 선언해주어야 한다. (보통은 자동으로 추가돼 있다.) 예제 1 - variable 이라는 패키지를 만든다. src(오른쪽 마우스 클릭) > New > Package 를 클릭하면 패키지명을 적으라는 창이 나온다. variable을 입력하고 엔터를 누르면 src 디렉터리에 variable 패키지가 생긴 것을 볼 수 있다. 예제 2 - variable 패키지에서 Var1 이라는 자바 클래스를 생성한다. src (오른쪽 마우스 클릭) > variable > New > Java Class를 클릭하면 클래스명을 적으라는 창이 나온다. Var1을 입력하..

BOJ 9498번 : 시험 성적 (Python, Java, C/구현/Bronze 5)

9498번: 시험 성적 시험 점수를 입력받아 90 ~ 100점은 A, 80 ~ 89점은 B, 70 ~ 79점은 C, 60 ~ 69점은 D, 나머지 점수는 F를 출력하는 프로그램을 작성하시오. www.acmicpc.net 설명 시험 점수를 입력받아 90 ~ 100점은 A, 80 ~ 89점은 B, 70 ~ 79점은 C, 60 ~ 69점은 D, 나머지 점수는 F를 출력하는 프로그램을 작성하시오. Solution Python score = int(input()) if 100 >= score and score >= 90: print('A') elif 89 >= score and score >= 80: print('B') elif 79 >= score and score >= 70: print('C') elif 69..

BOJ 1000번 : A+B (Python, Java/구현/Bronze 5)

1000번: A+B 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. www.acmicpc.net 설명 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. Solution Python a, b = map(int, input().split()) print(a+b) Java import java.util.Scanner; public class Main { public static void main(String[] args) { int a; int b; Scanner sc = new Scanner(System.in); a = sc.nextInt(); b = sc.nextInt(); System.out.println(a+b); } }

BOJ 2935번 : 소음 (Python/구현/Bronze 3)

2935번: 소음 수업 시간에 떠드는 두 학생이 있다. 두 학생은 수업에 집중하는 대신에 글로벌 경제 위기에 대해서 토론하고 있었다. 토론이 점점 과열되면서 두 학생은 목소리를 높였고, 결국 선생님은 크게 www.acmicpc.net 설명 학생들은 덧셈과 곱셈만 배웠다. 또, 아직 10의 제곱꼴을 제외한 다른 수는 학교에서 배우지 않았기 때문에, 선생님이 써주는 수는 모두 10의 제곱 형태이다. 숫자는 최대 100자리이다. 칠판에 쓰여 있는 문제가 주어졌을 때, 결과를 구하는 프로그램을 작성하시오. Solution a = int(input()) str = input() b = int(input()) if str == "*": print(a*b) else: print(a+b)

BOJ 5355번 : 화성 수학 (Python/구현/Bronze 2)

5355번: 화성 수학 겨울 방학에 달에 다녀온 상근이는 여름 방학 때는 화성에 갔다 올 예정이다. (3996번) 화성에서는 지구와는 조금 다른 연산자 @, %, #을 사용한다. @는 3을 곱하고, %는 5를 더하며, #는 7을 빼는 연산 www.acmicpc.net 설명 @는 3을 곱하고, %는 5를 더하며, #는 7을 빼는 연산자이다. 결과를 계산한 다음에, 소수점 둘째 자리까지 출력한다. 풀이 1. 문자열로 입력받기 2. 숫자만 실수형으로 변환하여 결과값에 넣기 3. 2번째 인덱스부터 문자열 길이까지 반복문을 통해 계산 '@'일 경우 결과값에 3을 곱한다. '%'일 경우 결과값에 5를 더한다. '#'일 경우 결과값에 7을 더한다. 4. %.2f 형식으로 소수점 출력 자릿수를 지정하고 결과값을 출력 ..

BOJ 11723번 : 집합 (Python/구현/Silver 5)

11723번: 집합 첫째 줄에 수행해야 하는 연산의 수 M (1 ≤ M ≤ 3,000,000)이 주어진다. 둘째 줄부터 M개의 줄에 수행해야 하는 연산이 한 줄에 하나씩 주어진다. www.acmicpc.net 설명 비어있는 공집합 S가 주어졌을 때, • add x: S에 x를 추가한다. (1 ≤ x ≤ 20) S에 x가 이미 있는 경우에는 연산을 무시한다. • remove x: S에서 x를 제거한다. (1 ≤ x ≤ 20) S에 x가 없는 경우에는 연산을 무시한다. • check x: S에 x가 있으면 1을, 없으면 0을 출력한다. (1 ≤ x ≤ 20) • toggle x: S에 x가 있으면 x를 제거하고, 없으면 x를 추가한다. (1 ≤ x ≤ 20) • all: S를 {1, 2, ..., 20} 으..

BOJ 3046번 : 삼각형과 R2 (Python/구현/Bronze 4)

3046번: R2 두 숫자 R1과 R2가 있을 때, 두 수의 평균 S는 (R1+R2)/2와 같다. 상근이는 정인이 생일 선물로 두 숫자 R1과 R2를 주려고 한다. 생일 파티에서 상근이는 정인이에게 이 두 숫자를 말해주고, 정인이는 www.acmicpc.net 설명 두 수의 평균 S는 (R1+R2)/2 이다. R2가 몇 인지 구하는 프로그램을 구현하라. 풀이 S = (R1+R2)/2를 변환하면 2S-R1 = R2 Solution r1, s = map(int, input().split()) print(2*s - r1)