문제 제목 : 팰린드롬인지 확인하기문제알파벳 소문자로만 이루어진 단어가 주어진다.이 때, 이 단어가 팰린드롬인지 아닌지 확인하는 프로그램을 작성하시오.팰린드롬 (Palindrome) 이란, 앞으로 읽을 때와 거꾸로 읽을 때 똑같은 단어를 말한다.level, noon 은 팰린드롬이고, baekjoon, online, judge 는 팰린드롬이 아니다.입력첫째 줄에 단어가 주어진다. 단어의 길이는 1보다 크거나 같고, 100보다 작거나 같으며, 알파벳 소문자로만 이루어져 있다.출력첫째 줄 에 팰린드롬이면 1, 아니면 0을 출력한다.예제 입력 1level예제 출력 11예제 입력 2baekjoon예제 출력 20왼쪽부터 읽었을 때, 오른쪽 부터 읽었을 때, 동일하다는 것을 어떻게 표현할 수 있을까?직관적으로 해석 ..
백준-단계별로 풀어보기
문제 제목 : 별 찍기 - 7문제예제를 보고 규칙을 유추 한 뒤에 별을 찍어 보세요.입력첫째 줄에 N ( 1 N 출력첫째 줄 부터 2 * N - 1 번째 줄 까지 차례대로 별을 출력한다.예제 입력 15예제 출력 1 * *** ***** **************** ******* ***** *** *별 찍기 문제는 하나의 방향으로 점화식이 만들어 지지만,이 문제는 혼란스럽게도, 증가와 감소의 경향을 동시에 보여주고 있다.먼저 확실히 해야 하는 것은, 공백(' ') 과 별('*') 이 순서대로 나온다는 것이다.공백의 증감, 별의 증감 요소를 살펴보는 것이다.예제 출력 1 을 살펴보면,먼저 공백이 줄어들며, 별이 점점 증가한다.중반 이후부터, 공백이 증가하며, 별이 점점 감소한다.그렇다..
문제 제목 : 킹, 퀸, 룩, 비숍, 나이트, 폰문제동혁이는 오래된 창고를 뒤지다가 낡은 체스판과 피스를 발견했다.검정색 피스는 모두 있었으나, 흰색 피스는 개수가 올바르지 않았다.체스는 총 16개의 피스를 사용하며, 킹 1개, 퀸 1개, 룩 2개, 비숍 2개, 나이트 2개, 폰 8개로 구성되어 있다.동혁이가 발견한 흰색 피스의 개수가 주어졌을 때, 몇 개를 더하거나 빼야 올바른 세트가 되는지 구하는 프로그램을 작성하시오.입력첫째 줄에 동혁이가 찾은 흰색 킹, 퀸, 룩, 비숍, 나이트, 폰의 개수가 주어진다.이 값은 0 보다 크거나 같고, 10 보다 작거나 같은 정수이다.출력첫째 줄에 입력에서 주어진 순서대로,몇 개의 피스를 더하거나 빼야 되는지를 출력한다. 만약 수가 양수라면 그 개수 만큼 피스를 더해..

문제 이름 : 다이얼문제전화를 걸고 싶은 번호가 있다면, 숫자를 하나 누른 후, 금손 핀이 있는 곳 까지 시계방향 으로 돌려야 한다.숫자를 하나 누르면, 다이얼이 처음 위치로 돌아가고,다음 숫자를 누르려면 다이얼을 처음 위치에서 다시 돌려야 한다.숫자 1 을 걸려면, 총 2 초가 필요하다.1 보다 큰 수를 거는데 걸리는 시간은 이보다 더 걸리며,한칸 옆에 있는 수자를 걸기 위해선 1 초씩 더 걸린다.상근이의 할머니는 전화 번호를 각 숫자에 해당하는 문자로 외운다.즉, 어떤 단어를 걸 때, 각 알파벳에 해당하는 수자를 걸면 된다.예를 들어, UNUCIC 는 868242 와 동일하다.할머니가 외운 단어가 주어졌을 때, 이 전화를 걸기 위해서 필요한 최소 시간 을 구하는 프로그램을 작성하시오.입력첫째 줄에 알..
문제 이름 : 알파벳 찾기문제알파벳 소문자로만 이루어진 단어 S가 주어진다. 각각의 알파벳에 대해서, 단어에 포함되어 있는 경우에는 처음 등장하는 위치를, 포함되어 있지 않은 경우에는 -1 을 출력하는 프로그램을 작성하시오.입력첫째 줄에 단어 S가 주어진다. 단어의 길이는 100을 넘지 않으며, 알파벳 소문자 로만 이루어져 있다.출력각각의 알파벳에 대해서, a가 처음 등장하는 위치, b가 처음 등장하는 위치, ... z가 처음 등장하는 위치를 공백으로 구분해서 출력한다.만약, 어떤 알파벳이 단어에 포함되어 있지 않다면 -1을 출력한다. 단어의 첫 번째 글자는 0번째 위치이고, 두 번째 글자는 1번째 위치이다.예제 입력 1baekjoon예제 출력 11 0 -1 -1 2 -1 -1 -1 -1 4 3 -1 -..
문제 이름 : 숫자의 합문제N 개의 숫자가 공백 없이 쓰여있다.이 숫자를 모두 합해서 출력하는 프로그램을 작성하시오.입력첫째 줄에 숫자의 개수 N ( 1 N 둘째 줄에 숫자 N 개가 공백없이 주어진다.출력입력으로 주어진 숫자 N 개의 합을 출력한다.예제 입력 111예제 출력 11예제 입력 2554321예제 출력 215예제 입력 3257000000000000000000000000예제 출력 37예제 입력 41110987654321예제 출력 446이 문제는 입력으로 주어질 문자열의 길이 를 친절하게 주었다.하지만, String 즉 문자열 클래스와의 메서드와 친해지기 위해서는,직접 알아내고 사용하는 것도 실력 향상에 좋다.맨 처음 입력으로 주어지는 길이 N 을 무시하고,그 다음 줄에 입력으로 주어지는 문자열을 ..
문제 이름 : 아스키 코드문제알파벳 소문자, 대문자, 숫자 0 ~ 9 중 하나가 주어졌을 때,주어진 글자의 아스키 코드값을 출력하는 프로그램을 작성하시오.입력알파벳 소문자, 대문자, 숫자 0-9 중 하나가 첫째 줄에 주어진다.출력입력으로 주어진 글자의 아스키 코드 값을 출력한다.예제 입력 1A예제 출력 165예제 입력 2C예제 출력 267예제 입력 30예제 출력 348예제 입력 49예제 출력 457예제 입력 5a예제 출력 597예제 입력 6z예제 출력 6122이번에는 ASCII CODE 에 대해서 배우는 문제이다.문자와 관련된 모든 데이터는 아스키 코드 와 관련이 있다.그것이 1개, 혹은 그 이상의 개수 또한 아스키 코드 와 관련이 무조건 있다.문자열 이란, 문자 를 나열 한 객체이다.즉, 대부분의 프로..
문제 제목 : 문자와 문자열문제단어 S 와 정수 i 가 주어졌을 때, S 의 i 번째 글자를 출력하는 프로그램을 작성하시오.입력첫째 줄에 영어 소문자와 대문자로만 이루어진 단어 S 가 주어진다.단어의 길이는 최대 1,000 이다.둘째 줄에 정수 i 가 주어진다.( 1 i |S| )출력S 의 i 번째 글자를 출력한다.예제 입력 1Sprout3예제 출력 1r예제 입력 2shiftpsh6예제 출력 2p예제 입력 3Baekjoon4예제 출력 3k문자와 문자열의 처리 과정에 대해서 알아야 하는 이유가 뭘까?회사의 알고리즘 문제에 나와서? 과제로 주어졌기 때문이었을까?아니면 백준의 알고리즘 풀이에 입력과 출력은 절대적이기 때문일까?위의 의견이 틀리지 않다. 하지만, 큰 그림을 보았을 때 이것을 왜 해야 하는가생각하..
문제 이름 : 바구니 뒤집기문제도현이는 바구니를 총 N 개 가지고 있고, 각각의 바구니에는 1 번부터 N 번까지 번호가 순서대로 적혀져 있다.바구니는 일렬로 놓여져 있고, 가장 왼쪽 바구니를 1 번째, 2 번째, .. 가장 오른쪽 바구니를 N 번째 바구니라고 부른다.입력첫째 줄에 N ( 1 N M ( 1 M 둘째 줄부터 M 개의 줄에는 바구니의 순서를 역순으로 만드는 방법이 주어진다.방법은 i, j 로 나타내고, 왼쪽 i 번째 바구니부터 j 번째 바구니의 순서를 역순으로 만든다는 뜻이다.( 1 i j N )도현이는 입력으로 주어진 순서대로 바구니의 순서를 바꾼다.출력모든 순서를 바꾼 후에,가장 왼쪽의 바구니부터 순서대로 공백으로 구분하여 출력한다.예제 입력 15 41 23 41 42 2예제 출력 13 4..
문제 제목 : 나머지문제두 자연수 A 와 B 가 있을 때, A % B 는 A 를 B 로 나눈 나머지이다.예를 들어, 7, 14, 27, 38을 3 으로 나눈 나머지는 1, 2, 0, 2 이다.수 10 개를 입력받은 뒤, 이를 42 로 나눈 나머지를 구한다.그 다음, 다른 값이 몇 개 있는지 출력하는 프로그램을 작성하시오.입력첫 번째 줄 부터 열 번째 줄 까지 숫자가 한 줄에 하나씩 주어진다.이 숫자는 1_000 보다 작거나 같고, 음이 아닌 정수이다.출력첫째 줄에, 42 로 나누었을 때, 서로 다른 나머지가 몇 개 있는지 출력한다.예제 입력 112345678910예제 출력 110예제 입력 242842524208401264284420126예제 출력 21예제 입력 339404142434482838485예제 ..