728x90
반응형

백준 30

[백준 알고리즘 10998번 문제] AxB (C언어) #브론즈Ⅴ

브론즈Ⅴ https://www.acmicpc.net/problem/10998 10998번: A×B 두 정수 A와 B를 입력받은 다음, A×B를 출력하는 프로그램을 작성하시오. www.acmicpc.net 풀이 방법 헤더파일에 있는 scanf함수를 이용해 A와 B를 입력받고, printf 함수를 이용해 AxB를 출력한다. 내 코드 1 2 3 4 5 6 7 8 9 10 11 12 13 #pragma warning(disable:4996) #include int main(void) { int A,B; scanf("%d %d",&A,&B); printf("%d\n", A*B); return 0; } cs 느낀 점 아주 기본적인 c언어를 이용한 입출력이다.

[백준 알고리즘 1001번 문제] A-B (C언어) #브론즈Ⅴ

브론즈Ⅴ https://www.acmicpc.net/problem/1001 1001번: A-B 두 정수 A와 B를 입력받은 다음, A-B를 출력하는 프로그램을 작성하시오. www.acmicpc.net 풀이 방법 헤더파일에 있는 scanf함수를 이용해 A와 B를 입력받고, printf 함수를 이용해 A-B 를 출력한다. 내 코드 1 2 3 4 5 6 7 8 9 10 11 12 13 #pragma warning(disable:4996) #include int main(void) { int A,B; scanf("%d %d",&A,&B); printf("%d\n", A-B); return 0; } cs 느낀 점 C언어를 이용한 아주 기본적인 입출력이다.

[백준 알고리즘 1000번 문제] A+B (C언어) #브론즈Ⅴ

브론즈Ⅴ https://www.acmicpc.net/problem/1000 1000번: A+B 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. www.acmicpc.net 풀이 방법 헤더파일에 있는 scanf함수를 이용해 A와 B를 입력받고, printf 함수를 이용해 A+B를 출력한다. 내 코드 1 2 3 4 5 6 7 8 9 10 11 12 13 #pragma warning(disable:4996) #include int main(void) { int A,B; scanf("%d %d",&A,&B); printf("%d\n", A+B); return 0; } cs 느낀 점 아주 기본적인 c언어를 이용한 입출력이다.

[백준 알고리즘 2557번 문제] Hello World (C언어) #브론즈Ⅴ

브론즈Ⅴ https://www.acmicpc.net/problem/2557 2557번: Hello World Hello World!를 출력하시오. www.acmicpc.net 풀이 방법 헤더파일에 있는 printf 함수를 이용해 Hello World! 를 출력한다. 내 코드 1 2 3 4 5 6 7 8 #pragma warning(disable:4996) #include int main(void) { printf("Hello World!"); return 0; } cs 느낀 점 코딩을 처음 시작한 사람이라면 한번씩 출력한다는 Hello World이다. 이렇게 출력형식이 정해져 있는 문제는 문제의 출력문을 그대로 Ctrl+c / Ctrl+v 해오는 것이 좋다.

[백준 알고리즘 2775번 문제] 부녀회장이 될테야 (C언어) #브론즈Ⅰ

브론즈Ⅰ https://www.acmicpc.net/problem/2775 2775번: 부녀회장이 될테야 첫 번째 줄에 Test case의 수 T가 주어진다. 그리고 각각의 케이스마다 입력으로 첫 번째 줄에 정수 k, 두 번째 줄에 정수 n이 주어진다 www.acmicpc.net 풀이 방법 입력값 k층 n호의 k와 n의 값을 각각 5층 3호로 가정했을 때 다음과 같이 나타낼 수 있었다. 5층 1 7 28 4층 1 6 21 3층 1 5 15 2층 1 4 10 1층 1 3 6 0층 1 2 3 위 표를 보았을 때 동일한 층의 (n-1)호의 사람의 수와 (k-1) 층의 동일한 호의 사람의 수의 합이 구하고자 하는 k층 n호의 사람 의 수가 됨을 알 수 있다. 즉, (k)층의 (n-1)호의 사람의 수 + (k-1..

[백준 알고리즘 10250번 문제] ACM 호텔 (C언어) #브론즈Ⅲ

브론즈Ⅲ https://www.acmicpc.net/problem/10250 10250번: ACM 호텔 프로그램은 표준 입력에서 입력 데이터를 받는다. 프로그램의 입력은 T 개의 테스트 데이터로 이루어져 있는데 T 는 입력의 맨 첫 줄에 주어진다. 각 테스트 데이터는 한 행으로서 H, W, N, 세 정수 www.acmicpc.net 풀이방법 수식으로 Y와 X를 구하면, Y는 N % H, X는 N / H +1 임을 구할 수 있다. 단, 여기서 Y는 N이 H의 배수일 때, X는 H가 N보다 작거나 N이 H의 배수일 때 예외로 다른 값이 나오는 것을 알 수 있다. 따라서 N % H 가 0인 경우와 그렇지 않은 경우 2가지로 나누어 식을 작성하면 정답을 구할 수 있다. 내 코드 1 2 3 4 5 6 7 8 9 ..

[백준 알고리즘 2869번 문제] 달팽이는 올라가고 싶다 (C언어) #브론즈Ⅰ

브론즈Ⅰ https://www.acmicpc.net/problem/2869 2869번: 달팽이는 올라가고 싶다 첫째 줄에 세 정수 A, B, V가 공백으로 구분되어서 주어진다. (1 ≤ B < A ≤ V ≤ 1,000,000,000) www.acmicpc.net 풀이 방법 반복문을 사용해 풀 경우 시간초과가 나기 때문에 수식을 이용해 풀었다. 마지막날에는 떨어지는 것을 고려하지 않아도 되므로, V-B미터를 올라가는 것이라고 생각하였고, A-B미터 만큼을 하루에 올라간다고 생각하여 (V-B)/(A-B)라는 수식을 작성했다. 여기에 V-B가 9미터이고 A-B가 2미터인 경우와 V-B가 똑같이 9미터이고 A-B가 3미터인 경우를 생각해볼때 (V-B)/(A-B)에 나머지가 존재하지 않으면 그대로, 존재하면 +1..

[백준 알고리즘 1316번 문제] 그룹 단어 체커 (C언어) #실버 Ⅴ

실버 Ⅴ https://www.acmicpc.net/problem/1316 1316번: 그룹 단어 체커 그룹 단어란 단어에 존재하는 모든 문자에 대해서, 각 문자가 연속해서 나타나는 경우만을 말한다. 예를 들면, ccazzzzbb는 c, a, z, b가 모두 연속해서 나타나고, kin도 k, i, n이 연속해서 나타나기 때 www.acmicpc.net 풀이 방법 연속돼서 나타나지 않을 때 그룹 단어가 아니게 되니, 문자열의 원소들을 앞에서부터 중복검사를 하면 된다. 여기서 주의할 점은 중복을 검사하기 위해 현재 가리키고 있는 원소의 -2번째 원소까지만 중복인지를 검사하고 -1번째 원소는 중복하는지를 검사하여 "ffff"와 같이 모두 같은 알파벳으로 이루어진 단어를 구별한다. 이 코드는 동적할당을 이용해 ..

[백준 알고리즘 1193번 문제] 분수찾기 (C언어) #브론즈Ⅰ

브론즈Ⅰ https://www.acmicpc.net/problem/1193 1193번: 분수찾기 첫째 줄에 X(1 ≤ X ≤ 10,000,000)가 주어진다. www.acmicpc.net 풀이 방법 위의 분수를 1/1 1/2 2/1 3/1 2/2 1/3 1/4 2/3 3/2 4/1 5/1 4/2 3/3 2/4 1/5 ... 다음과 같이 규칙에 따라 각 줄로 나타낼 수 있다. 여기서 식 k(k+1)/2를 이용해 주어지는 값 X가 위의 줄에서 몇번째 줄인지를 알 수 있다. 짝수번째 줄 : 분자 - 오름차순, 분모 - 내림차순 홀수번째 줄 : 분자 - 내림차순, 분모 - 오름차순 위의 규칙에 따라 내가 작성한 수식에 값을 대입하여 적절한 output 값을 출력한다. 내 코드 1 2 3 4 5 6 7 8 9 1..

[백준 알고리즘 3003번 문제] 킹, 퀸, 룩, 비숍, 나이트, 폰 (C언어) #브론즈Ⅴ

브론즈Ⅴ https://www.acmicpc.net/problem/3003 3003번: 킹, 퀸, 룩, 비숍, 나이트, 폰 첫째 줄에 동혁이가 찾은 흰색 킹, 퀸, 룩, 비숍, 나이트, 폰의 개수가 주어진다. 이 값은 0보다 크거나 같고 10보다 작거나 같은 정수이다. www.acmicpc.net 풀이 방법 킹 1개, 퀸 1개, 룩 2개, 비숍 2개, 나이트 2개, 폰 8개만큼의 배열을 만들고 for문을 돌리면서 배열의 각각의 원소 값에서 입력 값을 빼준 후 출력하면 된다. 내 코드 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 #pragma warning(disable:4996) #include #define n 6 int main(void) { int chess[] = {..

728x90
반응형