문제 정수를 저장하는 덱(Deque)를 구현한 다음, 입력으로 주어지는 명령을 처리하는 프로그램을 작성하시오. 명령은 총 여덟 가지이다. push_front X: 정수 X를 덱의 앞에 넣는다. push_back X: 정수 X를 덱의 뒤에 넣는다. pop_front: 덱의 가장 앞에 있는 수를 빼고, 그 수를 출력한다. 만약, 덱에 들어있는 정수가 없는 경우에는 -1을 출력한다. pop_back: 덱의 가장 뒤에 있는 수를 빼고, 그 수를 출력한다. 만약, 덱에 들어있는 정수가 없는 경우에는 -1을 출력한다. size: 덱에 들어있는 정수의 개수를 출력한다. empty: 덱이 비어있으면 1을, 아니면 0을 출력한다. front: 덱의 가장 앞에 있는 정수를 출력한다. 만약 덱에 들어있는 정수가 없는 경우에..
문제 N장의 카드가 있다. 각각의 카드는 차례로 1부터 N까지의 번호가 붙어 있으며, 1번 카드가 제일 위에, N번 카드가 제일 아래인 상태로 순서대로 카드가 놓여 있다. 이제 다음과 같은 동작을 카드가 한 장 남을 때까지 반복하게 된다. 우선, 제일 위에 있는 카드를 바닥에 버린다. 그 다음, 제일 위에 있는 카드를 제일 아래에 있는 카드 밑으로 옮긴다. 예를 들어 N=4인 경우를 생각해 보자. 카드는 제일 위에서부터 1234 의 순서로 놓여있다. 1을 버리면 234가 남는다. 여기서 2를 제일 아래로 옮기면 342가 된다. 3을 버리면 42가 되고, 4를 밑으로 옮기면 24가 된다. 마지막으로 2를 버리고 나면, 남는 카드는 4가 된다. N이 주어졌을 때, 제일 마지막에 남게 되는 카드를 구하는 프로..
문제 괄호 문자열(Parenthesis String, PS)은 두 개의 괄호 기호인 ‘(’ 와 ‘)’ 만으로 구성되어 있는 문자열이다. 그 중에서 괄호의 모양이 바르게 구성된 문자열을 올바른 괄호 문자열(Valid PS, VPS)이라고 부른다. 한 쌍의 괄호 기호로 된 “( )” 문자열은 기본 VPS 이라고 부른다. 만일 x 가 VPS 라면 이것을 하나의 괄호에 넣은 새로운 문자열 “(x)”도 VPS 가 된다. 그리고 두 VPS x 와 y를 접합(concatenation)시킨 새로운 문자열 xy도 VPS 가 된다. 예를 들어 “(())()”와 “((()))” 는 VPS 이지만 “(()(”, “(())()))” , 그리고 “(()” 는 모두 VPS 가 아닌 문자열이다. 여러분은 입력으로 주어진 괄호 문자열..
import java.util.*; public class StackZero { public static void main(String[] args) { Stack account = new Stack(); Scanner sc = new Scanner(System.in); intk, money, total; k = sc.nextInt(); for (int i = 0; i < k; i++) { money = sc.nextInt(); if(money == 0) account.pop(); else account.push(money); } total = 0; while(!account.empty()) { total += account.pop(); } System.out.println(total); } }
#define _CRT_SECURE_NO_WARNINGS #define MAX 1001 #include int main(void) { int n, sum, min, selected, waitTime, i, j; int timeNeeded[1000], timeSpent[1000]; scanf("%d", &n); for (i = 0; i < n; i++) { scanf("%d", &timeNeeded[i]); } sum = waitTime = 0; for (i = 0; i < n; i++){//선택된 최소값으로 걸린 시간 계산 n번 반복 min = MAX; selected = 0; for (j = 0; j < n; j++){//유효한 값 중 최소값 선택 if (timeNeeded[j] < min) { min..
예제1번) Tv인스턴스를 저장하는 참조변수 t1과 t2를 선언한 후, t1에 있는 객체의 주소를 t2에 저장하는 코드이다. class Tv { //Tv의 속성(멤버변수) String clolr;//색상 boolean power;//전원 상태 int channel;//채널 //Tv의 기능(메서드) void power() {power = !power;}//Tv를 켜거나 끄는 기능을 하는 메서드 void channelUp() {++channel;}//Tv의 채널을 높이는 기능을 하는 메서드 void channelDown() {--channel;} //Tv의 채널을 낮추는 기능을 하는 메서드 } class TvTest3{ public static void main(String[] args) { Tv t1 = n..
객체지향언어 객체지향언어: 절차적 언어에 몇 가지 새로운 규칙을 추가한 보다 발전된 형태의 프로그래밍 언어이다. 규칙들을 이용해 코드 간에 서로 관계를 맺어 줌으로써 보다 유기적으로 프로그램을 구성할 수 있다. 클래스와 객체 클래스와 객체의 정의와 용도: 클래스는 객체를 정의해 둔 것이다. 클래스는 객체를 생성하는 데 사용된다. 객체와 인스턴스: 클래스로부터 객체를 만드는 과정을 클래스의 인스턴스화라고 한다. 또한 어떤 클래스로부터 만들어진 객체를 그 클래스의 인스턴스라고 한다. 객체의 구성요소 - 속성과 기능: 객체는 속성(variable)과 기능(method)으로 이루어져 있다. 객체가 가진 속성과 기능을 그 객체의 멤버라고 한다. 인스턴스의 생성과 사용: 인스턴스를 사용하기 위해서는 우선 해당 클래..
헤더파일 '#include ' 는 stdio.h 파일을 코드의 해당 위치에 포함 시키라는 의미다. 해당 파일은 입출력에 관한 기본 라이브러리이다. 출력함수 'printf()' 이미 다른 개발자가 정의해 놓은 라이브러리 함수로 원하는 형식으로 문자를 출력할 수 있다. 형식지정자 공백, 정렬 등 출력 형식을 지정해준다. '%d'는 십진수 출력, '%x'는 8진수 출력, '%03d'는 세자리 중 공백을 0으로 채우고 세자리 십진수 출력 등 다양한 형식을 지정할 수 있다. 컴파일 오류 실행 시 나는 오류가 아닌 문법을 잘못 작성하여 컴파일 과정에서 발생하는 오류다.
객체와 인스턴스 객체: 모든 인스턴스를 대표하는 일반적 용어 인스턴스: 특정 클래스로부터 생성된 객체 (예: Student인스턴스) //설계도를 한번 만들면 그대로 계속 사용하면 되듯이, //우리가 프로그래밍을 하며 필요한 무언가의 설계도를 클래스로 만들어 놓고 //그것을 그대로 객체로 생성해 사용하기 위해 클래스와 객체 개념이 있는것 객체의 생성과 사용 클래스명 변수명 = new 클래스명(); //Student s1 = new Student(); //Scanner sc = new Scanner(System.in); 변수(인스턴스).메소드(); //s1.eat(); //sc.nextInt(); //클래스 작성 -> 객체(인스턴스) 생성 -> 객체(인스턴스) 사용 //main메소드가 있는 클래스 이름과 파..
//객체지향프로그래밍? 영어로 object라고 하는데 object는 물체라는 뜻 //실제하는 물체를 표현하기 위해 설계도, 틀, 프로그래밍에서는 코드로 물체(객체)를 정의내리는 것 클래스 정의: 객체를 정의해 놓은 것 (제품 설계도) 용도: 객체를 생성하는데 사용 (제품) 객체 = 속성(변수) + 기능(메서드) car = 속성(String color, int price, ...) + 기능(power, run, ...) 객체와 인스턴스 객체: 모든 인스턴스를 대표하는 일반적 용어 인스턴스: 특정 클래스로부터 생성된 객체 (예: Car인스턴스) //설계도를 한번 만들면 제품을 만들 때 계속 사용하듯이, //우리가 프로그래밍을 하며 필요한 무언가의 설계도를 클래스로 만들어 놓고 //그것을 객체(물체, 제품)로..
- Total
- Today
- Yesterday
- 동덕여대 컴퓨터학과
- 동덕여대
- 아이엘츠
- 코딩
- 백준 1004
- BFS
- 컴퓨터학과
- 백준
- RDD
- 자바 9375
- 안드로이드
- 컴과
- 리트코드 1768
- 자바
- 스프링 강의
- 생활코딩
- 컴공
- 웹
- 프로그래밍
- 그리디 알고리즘
- 코틀린
- 스프링부트
- 백준9375번
- 리트코드 1768 해석
- 알고리즘
- 스파크
- 백준 2108
- bcrypaswordencoder
- 자바 1004번
- 개발
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |