본문 바로가기

백준27

백준 2439번 C++ 어이없는 실수 별 찍기 - 2https://www.acmicpc.net/problem/2439첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제하지만, 오른쪽을 기준으로 정렬한 별(예제 참고)을 출력하시오. 코드123456789101112131415161718#include using namespace std; int main() { int N, i, j; cin>>N; for(i=1; i0; j--) { cout 2019. 5. 23.
백준 1094번 C++ 막대기 막대기https://www.acmicpc.net/problem/1094지민이는 길이가 64cm인 막대를 가지고 있다. 어느 날, 그는 길이가 Xcm인 막대가 가지고 싶어졌다. 지민이는 원래 가지고 있던 막대를 더 작은 막대로 자른다음에, 풀로 붙여서 길이가 Xcm인 막대를 만들려고 한다.막대를 자르는 가장 쉬운 방법은 절반으로 자르는 것이다. 지민이는 아래와 같은 과정을 거쳐서 막대를 자르려고 한다.지민이가 가지고 있는 막대의 길이를 모두 더한다. 처음에는 64cm 막대 하나만 가지고 있다. 이때, 합이 X보다 크다면, 아래와 같은 과정을 반복한다.가지고 있는 막대 중 길이가 가장 짧은 것을 절반으로 자른다.만약, 위에서 자른 막대의 절반 중 하나를 버리고 남아있는 막대의 길이의 합이 X보다 크거나 같다.. 2019. 5. 20.
백준 10253번 C++ 헨리 헨리https://www.acmicpc.net/problem/10253 이제 10 살이 된 헨리(Henry)는 수학에 소질이 있다. 수학선생님인 아메스(Ahmes)는 오늘 헨리에게 분수에 대해 가르쳐줬고, 헨리는 분수를 이리저리 계산해보는 것이 너무 재미있었다. 그러던 중에 헨리는 1 보다 작은 분수를 여러 개의 서로 다른 단위분수의 합으로 표현할 수 있다는 것을 알아내었다. 여기서 단위분수란 분자가 1 인 분수를 말한다. 헨리는 여러 개의 분수에 대해 이를 시도해봤고, 시도해본 분수들은 모두 서로 다른 단위분수의 합으로 표현할 수 있었다. 예를 들어, 423은 16+1138와 같이 두 개의 단위 분수의 합으로 나타낼 수 있다. 헨리는 이런 발견을 선생님인 아메스에게 자랑스럽게 이야기했다. 아메스는 이를.. 2019. 5. 20.
백준 1107번 C++ 리모컨 문제 (추가) 현재 상황...반례를 고쳤더니 시간 초과가 떴다그래도 그냥 정리하기 위해 포스팅 나중에 맞으면 다시 고쳐서 올림 (추가) 어제 추가된 틀렸습니다와 시간 초과 ㅋㅋㅋㅋ아마 둘 다 그냥 틀렸습니다겠지 ㅎㅎ저거 원래 있던 코드로 하다가 뻘짓해서 난 결과이다 리모컨은 왜 부수고 난리냐?https://www.acmicpc.net/problem/1107 수빈이는 TV를 보고 있다. 수빈이는 채널을 돌리려고 했지만, 버튼을 너무 세게 누르는 바람에, 일부 숫자 버튼이 고장났다.리모컨에는 버튼이 0부터 9까지 숫자, +와 -가 있다. +를 누르면 현재 보고있는 채널에서 +1된 채널로 이동하고, -를 누르면 -1된 채널로 이동한다. 채널 0에서 -를 누른 경우에는 채널이 변하지 않고, 채널은 무한대 만큼 있다.수빈이가 .. 2019. 5. 18.
백준 1157번 C++ 단어 공부 가장 많이 사용된 알파벳 알아내기https://www.acmicpc.net/problem/1157 알파벳 대소문자로 된 단어가 주어지면, 이 단어에서 가장 많이 사용된 알파벳이 무엇인지 알아내는 프로그램을 작성하시오. 단, 대문자와 소문자를 구분하지 않는다. 코드1234567891011121314151617181920212223242526272829303132333435#include #include using namespace std; int main() { string word; cin>>word; int listOfWord[26]={0,}; int maxIdx=0, max; for(int i=0; i90) {//아스키코드에서 대문자가 아니면 word[i]=toupper(word[i]); } int .. 2019. 5. 13.
백준 1181번 C++ 단어 정렬하기 특정 조건에 따라서 단어 정렬하기https://www.acmicpc.net/problem/1181 알파벳 소문자로 이루어진 N개의 단어가 들어오면 아래와 같은 조건에 따라 정렬하는 프로그램을 작성하시오.길이가 짧은 것부터길이가 같으면 사전 순으로 코드123456789101112131415161718192021222324252627282930313233343536373839404142#include #include #define swap(x, y, temp) ((temp)=(x), (x)=(y), (y)=(temp))using namespace std; int main() { int N, least; cin>>N; string arr[N], temp; for(int i=0; i>arr[i]; } for(i.. 2019. 4. 11.
백준 2581번 C++ 소수 판별하기 소수 판별하고 최솟값, 합 출력하기 https://www.acmicpc.net/problem/2581 자연수 M과 N이 주어질 때 M이상 N이하의 자연수 중 소수인 것을 모두 골라 이들 소수의 합과 최솟값을 찾는 프로그램을 작성하시오. 예를 들어 M=60, N=100인 경우 60이상 100이하의 자연수 중 소수는 61, 67, 71, 73, 79, 83, 89, 97 총 8개가 있으므로, 이들 소수의 합은 620이고, 최솟값은 61이 된다. 코드 #include #include using namespace std; bool isPrime(int n) { if(n M >> N; int min = M; int sum = 0; while (M 2019. 2. 20.
백준 1026번 C++ 보물 정렬하지 않고 풀기옛날 옛적에 수학이 항상 큰 골칫거리였던 나라가 있었다. 이 나라의 국왕 김지민은 다음과 같은 문제를 내고 큰 상금을 걸었다.길이가 N인 정수 배열 A와 B가 있다. 다음과 같이 함수 S를 정의하자.S = A[0]*B[0] + ... + A[N-1]*B[N-1]S의 값을 가장 작게 만들기 위해 A의 수를 재배열하자. 단, B에 있는 수는 재배열하면 안된다.S의 최솟값을 출력하는 프로그램을 작성하시오. 문제 링크 https://www.acmicpc.net/problem/1026 처음에는 도움만 받고 지금도 도움을 받고서 알고리즘 문제를 풀지만그래도 처음에 시작할 때보단 실력이 늘었겠지 생각이 들어 이전에 틀렸던 문제들을 풀고 있다.이 문제는 정답률 60%로 낮은 편이 아니지만 내 정답률은.. 2019. 2. 14.
백준 10866번 C++ 덱 구현 덱 구현하고 명령어에 따라 출력하기https://www.acmicpc.net/problem/10866 정수를 저장하는 덱(Deque)를 구현한 다음, 입력으로 주어지는 명령을 처리하는 프로그램을 작성하시오.명령은 총 여덟 가지이다.push_front X: 정수 X를 덱의 앞에 넣는다.push_back X: 정수 X를 덱의 뒤에 넣는다.pop_front: 덱의 가장 앞에 있는 수를 빼고, 그 수를 출력한다. 만약, 덱에 들어있는 정수가 없는 경우에는 -1을 출력한다.pop_back: 덱의 가장 뒤에 있는 수를 빼고, 그 수를 출력한다. 만약, 덱에 들어있는 정수가 없는 경우에는 -1을 출력한다.size: 덱에 들어있는 정수의 개수를 출력한다.empty: 덱이 비어있으면 1을, 아니면 0을 출력한다.fron.. 2019. 2. 12.