별의 공부 블로그 🧑🏻‍💻

🗒️ Problem Solving (130)

728x90
  1. 2017.11.09 [BOJ2444][C++] 별찍기 - 7

    문제예제를 보고 별찍는 규칙을 유추한 뒤에 별을 찍어 보세요. 입력첫째 줄에 N (1 n; for (int i = 1; i

  2. 2017.11.09 [BOJ2443][C++] 별찍기 - 6

    문제첫째 줄에는 별 2*N-1개, 둘째 줄에는 별 2*N-3개, ..., N번째 줄에는 별 1개를 찍는 문제 별은 가운데를 기준으로 대칭이어야 한다. 입력첫째 줄에 N (1 n; for (int i = 0; i

  3. 2017.11.09 [BOJ2422][C++] 별찍기 - 5

    문제첫째 줄에는 별 1개, 둘째 줄에는 별 3개, ..., N번째 줄에는 별 2*N-1개를 찍는 문제 별은 가운데를 기준으로 대칭이어야 한다. 입력첫째 줄에 N (1 n; for (int i = 1; i

  4. 2017.11.09 [BOJ2441][C++] 별찍기 - 4

    문제첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제하지만, 오른쪽을 기준으로 정렬한 별 (예제 참고)을 출력하시오. 입력첫째 줄에 N (1 n; for (int i = n; i > 0; i--) { for (int j = n; j > i; j--) { cout

  5. 2017.11.09 [BOJ2440][C++] 별찍기 - 3

    문제첫째 줄에는 별 N개, 둘째 줄에는 별 N-1개, ..., N번째 줄에는 별 1개를 찍는 문제 입력첫째 줄에 N (1 n; for (int i = n; i > 0; i--) { for (int k = i; k >= 1; k--) { cout

  6. 2017.11.09 [BOJ2439][C++] 별찍기 - 2

    문제첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제하지만, 오른쪽을 기준으로 정렬한 별 (예제 참고)을 출력하시오. 입력첫째 줄에 N (1 n; for (int i = n; i > 0; i--) { for (int k = i; k > 1; k--) { cout

  7. 2017.11.09 [BOJ2348][C++] 별찍기 - 1

    문제첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제 입력첫째 줄에 N (1 n; for (int i = 0; i

  8. 2017.11.09 [BOJ1357][C++] 뒤집힌 덧셈

    문제 어떤 수 X가 주어졌을 때, X의 모든 자리수가 역순이 된 수를 얻을 수 있다. Rev(X)를 X의 모든 자리수를 역순으로 만드는 함수라고 하자. 예를 들어, X=123일 때, Rev(X) = 321이다. 그리고, X=100일 때, Rev(X) = 1이다. 두 양의 정수 X와 Y가 주어졌을 때, Rev(Rev(X) + Rev(Y))를 구하는 프로그램을 작성하시오 입력 첫째 줄에 수 X와 Y가 주어진다. X와 Y는 1,000보다 작거나 같은 자연수이다. 출력 첫째 줄에 문제의 정답을 출력한다. 예제 입력 123 100 예제 출력 223 힌트 출처 · 문제를 번역한 사람: baekjoon 알고리즘 분류 · 수학 코드 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 ..

  9. 2017.11.08 [BOJ11050][C++] 이항 계수 1

    문제자연수 N과 정수 K가 주어졌을 때 이항 계수를 구하는 프로그램을 작성하시오. 입력첫째 줄에 N과 K가 주어진다. (1 ≤ N ≤ 10, 0 ≤ K ≤ N) 출력를 출력한다. 예제 입력 5 2 예제 출력 10 힌트 출처· 문제를 만든 사람: baekjoon 코드 123456789101112131415161718192021222324#include using namespace std; long long bicoeff(int n, int r){ if (n == r || r == 0) { return 1; } else { return bicoeff(n - 1, r - 1) + bicoeff(n - 1, r); }} int main(){ int N, K; cin >> N >> K; cout

  10. 2017.11.08 [BOJ1676][C++] 팩토리얼 0의 개수

    문제N!에서 뒤에서부터 처음 0이 아닌 숫자가 나올 때까지 0의 개수를 구하는 프로그램을 작성하시오. 입력첫째 줄에 N이 주어진다. (0 ≤ N ≤ 500) 출력첫째 줄에 구한 0의 개수를 출력한다. 예제 입력 10 예제 출력 2 힌트 출처· 문제를 만든 사람: author6 코드 12345678910111213141516#include using namespace std; int main(){ int cnt = 0, n; cin >> n; for (int i = 1; i

  11. 2017.11.08 [BOJ11004][C++] K번째 수 : 오름차순 정렬

    문제수 N개 이 주어진다. A를 오름차순 정렬했을 때, 앞에서부터 K번째 있는 수를 구하는 프로그램을 작성하시오. 입력첫째 줄에 N(1 ≤ N ≤ 5,000,000)과 K (1 ≤ K ≤ N)이 주어진다. 둘째에는 이 주어진다. () 출력A를 정렬했을 때, 앞에서부터 K번째 있는 수를 출력한다. 예제 입력 5 2 4 1 2 3 5 예제 출력 2 힌트 출처· 문제를 만든 사람: baekjoon 알고리즘 분류· 정렬 코드 123456789101112#include #include using namespace std;int n, k, N[5000000];int main(){ scanf("%d %d", &n, &k); for (int i = 0; i

  12. 2017.11.08 [BOJ10872][C++] 팩토리얼

    문제0보다 크거나 같은 정수 N이 주어진다. 이 때, N!을 출력하는 프로그램을 작성하시오. 입력첫째 줄에 정수 N(0 ≤ N ≤ 12)가 주어진다. 출력첫째 줄에 N!을 출력한다. 예제 입력 10 예제 출력 3628800 힌트 출처· 문제를 만든 사람: baekjoon 알고리즘 분류· 구현 코드 1234567891011121314151617#include using namespace std; int main(){ int n, sum = 1; cin >> n; for (int i = 1; i

  13. 2017.11.08 [BOJ2750][C++] 수 정렬하기 : 오름차순 정렬

    문제N개의 수가 주어졌을 때, 이를 오름차순으로 정렬하는 프로그램을 작성하시오. 입력첫째 줄에 수의 개수 N(1 n; for (int i = 0; i > ary[i]; } for (int i = 0; i

  14. 2017.11.08 [BOJ2748][C++] 피보나치 수 2

    문제피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n>=2)가 된다. n=17일때 까지 피보나치 수를 써보면 다음과 같다. 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597 n이 주어졌을 때, n번째 피보나치 수를 구하는 프로그램을 작성하시오. 입력첫째 줄에 n이 주어진다. n은 90보다 작거나 같은 자연수이다. 출력첫째 줄에 n번째 피보나치 수를 출력한다. 예제 입력 10 예제 출력 55 힌트 코드 1234567891011121314151617181920212223..

  15. 2017.11.08 [BOJ2747][C++] 피보나치 수

    문제피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n>=2)가 된다. n=17일때 까지 피보나치 수를 써보면 다음과 같다. 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597 n이 주어졌을 때, n번째 피보나치 수를 구하는 프로그램을 작성하시오. 입력첫째 줄에 n이 주어진다. n은 45보다 작거나 같은 자연수이다. 출력첫째 줄에 n번째 피보나치 수를 출력한다. 예제 입력 10 예제 출력 55 힌트 코드 12345678910111213141516171819202122#i..

  16. 2017.11.08 [BOJ11022][C++] A+B - 8

    문제두 수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. 입력첫째 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있으며, 각 줄에 A와 B가 주어진다. (0 < A,B < 10) 출력각 테스트 케이스마다 "Case #x: A + B = C" 형식으로 출력한다. x는 테스트 케이스 번호이고 1부터 시작하며, C는 A+B이다. 예제 입력 5 1 1 2 3 3 4 9 8 5 2 예제 출력 Case #1: 1 + 1 = 2 Case #2: 2 + 3 = 5 Case #3: 3 + 4 = 7 Case #4: 9 + 8 = 17 Case #5: 5 + 2 = 7 힌트 출처· 문제를 만든 사람: baekjoon 알고리즘 분류· 사칙연산 코드 12345678910..

  17. 2017.11.08 [BOJ11021][C++] A+B - 7

    문제두 수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. 입력첫째 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있으며, 각 줄에 A와 B가 주어진다. A와 B는 콤마(,)로 구분되어 있다. (0 < A,B < 10) 출력각 테스트 케이스마다 "Case #x: "를 출력한 다음, A+B를 출력한다. 테스트 케이스 번호는 1부터 시작한다. 예제 입력 5 1,1 2,3 3,4 9,8 5,2 예제 출력 Case #1: 2 Case #2: 5 Case #3: 7 Case #4: 17 Case #5: 7 힌트 출처· 문제를 만든 사람: baekjoon 알고리즘 분류· 사칙연산 코드 1234567891011121314151617#include using nam..

  18. 2017.11.08 [BOJ10953][C++] A+B - 6

    문제두 수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. 입력첫째 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있으며, 각 줄에 A와 B가 주어진다. A와 B는 콤마(,)로 구분되어 있다. (0 > T; for (int i = 0; i > num; cout

  19. 2017.11.08 [BOJ10952][C++] A+B - 5

    문제두 수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. 입력입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있으며, 각 줄에 A와 B가 주어진다. (0 > a >> b) { if ((a == 0) && (b == 0..

  20. 2017.11.08 [BOJ10951][C++] A+B - 3

    문제두 수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. 입력첫째 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있으며, 각 줄에 A와 B가 주어진다. (0 > T; for (int i = 0; i > a >> b; cout

  21. 2017.11.08 [BOJ10951][C++] A+B - 4

    문제두 수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. 입력입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있으며, 각 줄에 A와 B가 주어진다. (0 > a >> b) cout b)을 사용해서 연산을 수행해야 한다.- 처음에는 아래와 같이 코드를 작성하여 제출하였으나 출력초과가 떠버..

  22. 2017.11.08 [BOJ2744][C++] 대소문자 바꾸기

    문제영어 소문자와 대문자로 이루어진 단어를 입력받은 뒤, 대문자는 소문자로, 소문자는 대문자로 바꾸어 출력하는 프로그램을 작성하시오. 입력첫째 줄에 영어 소문자와 대문자로만 이루어진 단어가 주어진다. 단어의 길이는 최대 100이다. 출력첫째 줄에 입력으로 주어진 단어에서 대문자는 소문자로, 소문자는 대문자로 바꾼 단어를 출력한다. 예제 입력 WrongAnswer 예제 출력 wRONGaNSWER 힌트 코드 123456789101112131415161718192021222324252627282930313233#include #include // strlen() #define N 101 using namespace std; int main(){ char input[N]; int len; cin >> input..

  23. 2017.11.07 [BOJ1237][C++] 정ㅋ벅ㅋ

    문제 이 문제를 푸는 자 우주를 정ㅋ벅ㅋ한다. 입력 우주를 정ㅋ벅ㅋ하는 자에겐 입력 따위 필요 없다. 출력 첫째 줄에 문제의 정답을 출력한다. 예제 입력 예제 출력 힌트 우주를 정ㅋ벅ㅋ할 사람에게는 예제 입력과 예제 출력이 필요하지 않다. 출처 · 문제를 만든 사람: baekjoon 알고리즘 분류 · 출력 코드 1 2 3 4 5 6 7 8 9 #include using namespace std; int main() { cout

  24. 2017.10.27 [BOJ1427][C++] 소트인사이드 : 내림차순 정렬

    문제 배열을 정렬하는 것은 쉽다. 숫자가 주어지면, 그 숫자의 각 자리수를 내림차순으로 정렬해보자. 입력 첫째 줄에 정렬하고자하는 수 N이 주어진다. N은 1,000,000,000보다 작거나 같다. 출력 둘째 줄에 숫자의 자리수를 내림차순으로 정렬한 수를 출력한다. 예제 입력 2143 예제 출력 4321 힌트 출처 · 문제를 번역한 사람: baekjoon 알고리즘 분류 · 정렬 코드 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 #include #include // strlen() using namespace std; int main() { char num[13] = " "; // 1,000,000,000 이하인 수 ..

  25. 2017.10.27 [BOJ2941][C++] 크로아티아 알파벳

    문제 예전에는 운영체제에서 크로아티아 알파벳을 입력할 수가 없었다. 따라서, 다음과 같이 크로아티아 알파벳을 다음과 같이 변경해서 입력했다. 크로아티아 알파벳 변경 č c= ć c- dž dz= ñ d- lj lj nj nj š s= ž z= 예를 들어, ljes=njak은 크로아티아 알파벳 6개(lj, e, š, nj, a, k)로 이루어져 있다. 단어가 주어졌을 때, 몇 개의 크로아티아 알파벳으로 이루어져 있는지 출력한다. 입력 첫째 줄에 최대 100글자의 단어가 주어진다. 알파벳 소문자와 '-', '='로만 이루어져 있다. 문제 설명에 나와있는 크로아티아 알파벳만 주어진다. 출력 입력으로 주어진 단어가 몇 개의 크로아티아 알파벳으로 이루어져 있는지 출력한다. 예제 입력 ljes=njak 예제 출력 ..

  26. 2017.10.27 [BOJ5622][C++] 다이얼

    문제 상근이의 할머니는 아래 그림과 같이 오래된 다이얼 전화기를 사용한다. 전화를 걸고 싶은 번호가 있다면, 숫자를 하나를 누른 다음에 금속 핀이 있는 곳 까지 시계방향으로 돌려야 한다. 다른 숫자를 누르려면 다이얼이 원래 위치로 돌아가기를 기다려야 한다. 숫자 1을 걸려면 총 2초가 필요하다. 1보다 큰 수를 거는데 걸리는 시간은 이보다 더 걸리며, 한 칸 옆에 있는 숫자를 걸기 위해선 1초씩 더 걸린다. 상근이의 할머니는 전화 번호를 각 숫자에 해당하는 문자로 외운다. 즉, 어떤 단어를 걸 때, 각 알파벳에 해당하는 숫자를 걸면 된다. 예를 들어, UNUCIC는 868242와 같다. 할머니가 외운 단어가 주어졌을 때, 이 전화를 걸기 위해서 필요한 시간을 구하는 프로그램을 작성하시오. 입력 첫째 줄에..

  27. 2017.10.26 [BOJ2908][C++] 상수

    문제 상근이의 동생 상수는 수학을 정말 못한다. 상수는 숫자를 읽는데 문제가 있다. 이렇게 수학을 못하는 상수를 위해서 상근이는 수의 크기를 비교하는 문제를 내주었다. 상근이는 세 자리 숫자 두 개를 칠판에 써주었다. 그 다음에 크기가 큰 수를 말해보라고 했다. 상수는 수를 다른사람과 다르게 거꾸로 읽는다. 예를 들어, 734과 893을 칠판에 적었다면, 상수는 이 수를 437과 398로 읽는다. 따라서, 상수는 두 수중 큰 수인 437을 큰 수라고 말할 것이다. 두 수가 주어졌을 때, 상수의 대답을 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 상근이가 칠판에 적은 두 수 A와 B가 주어진다. 두 수는 같지 않은 세 자리 수이며, 0이 포함되어 있지 않다. 출력 첫째 줄에 상수의 대답을 출력한다. 예..

  28. 2017.10.26 [BOJ10829][C++] 이진수 변환

    문제 자연수 N이 주어진다. N을 이진수로 바꿔서 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 자연수 N이 주어진다. (1 ≤ N ≤ 100,000,000,000,000) 출력 N을 이진수로 바꿔서 출력한다. 이진수는 0으로 시작하면 안된다. 예제 입력 53 예제 출력 110101 힌트 출처 · 문제를 만든 사람: baekjoon 알고리즘 분류 · 진법 코드 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 #include using namespace std; // 재귀 함수 사용 void DectoBin(unsigned long long a) { if (a != 1) DectoBin(a / 2); cout input; DectoBin(input); cout

  29. 2017.10.26 [BOJ8741][C++] 이진수 합

    문제 세계적인 이진수 매니아 현수는 오늘도 이진수를 연구하고 있다. 오늘은 이진수로 나타냈을 때, k자리 이하인 모든 자연수의 합을 구해보려고 한다. k가 주어졌을 때, 이진수로 나타냈을 때, k자리 이하인 모든 자연수의 합을 구하는 프로그램을 작성하시오. 입력 첫째 줄에 k가 주어진다. (1 ≤ k ≤ 106) 출력 첫째 줄에 이진수로 나타냈을 때, k자리 이하인 모든 자연수의 합을 이진수로 출력한다. 예제 입력 3 예제 출력 11100 힌트 1 + 2 + 3 + 4 + 5 + 6 + 7 = 28 = 111002 출처 Camp > ILOCAMP Science Camps > ILOCAMP 2010 (Intermediate Group) 43번 · 문제를 번역한 사람: baekjoon 코드 1 2 3 4 5..

  30. 2017.10.25 [BOJ2675][C++] 문자열 반복

    문제 문자열 S를 입력받은 후에, 각 문자를 R번 반복해 새 문자열 T를 만든 후 출력하는 프로그램을 작성하시오. 다시 설명하자면, 첫 번째 문자를 R번 반복하고, 두 번째 문자를 R번 반복하는 식으로 T를 만들면 된다. S에는 QR Code "alphanumeric" 문자만 들어있다. QR Code "alphanumeric" 문자는 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ$%*+-./: 이다. 입력 첫째 줄에 테스트 케이스의 개수 T(1 2011 Greater New York Programming Contest A번 · 문제를 번역한 사람: baekjoon · 잘못된 데이터를 찾은 사람: pichulia 링크 ACM-ICPC Live Archive HDU Online Judge..

728x90


📖 Contents 📖