본문 바로가기

C 프로그래밍

[C] SW Expert Academy 문제풀이 :: 1954번 SW Expert Academy 1954번 달팽이 숫자 문제풀이. 처음에 접근법이 살짝 헷갈렸던 문제. 뭔가 효율적이고 쉬운 방법이 있을 것 같았다. 근데 풀다보니깐 그냥 배열을 만들어 놓고 일일이 메모리에 접근해서 숫자를 대입했다. 컴공 첫 과제로 내는 문제라고들 한다. 몇 번 숫자를 대입하고 방향을 꺾나 세보니 n, n-1, n-1, n-2, n-2, .... 2, 2, 1, 1, 이런 식으로 되더라. 시작부터 n번 오른쪽으로 진행하고 아래로 방향을 꺽고, n-1 아래로 진행하고 왼쪽으로 방향을 꺾는 식. (n, n-1) (n-1, n-2) ,.... (2,1), 1로 분할해줬다. 문제 https://swexpertacademy.com/main/code/problem/problemDetail.do?c.. 더보기
[C] SW Expert Academy 문제풀이 :: 1961번 SW Expert Academy 1961번 숫자 배열 회전 문제풀이. 문제가 말하는 게 무슨 말인지 이해하는데 한참 걸렸다. 2차원 배열을 90도, 180도, 270도 회전해 출력하는 문제인데, 1자리 수가 들어있는 3x3 행렬을 회전했더니 3자리 수가 들어있는 3x3 행렬이 나온 것이다. 알고보니 90, 180, 270도 회전한 배열을 나란히 출력한 것이었다. 어쨌든 구현은 간단했다. 문제 https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5Pq-OKAVYDFAUq&categoryId=AV5Pq-OKAVYDFAUq&categoryType=CODE N x N 행렬이 주어질 때, 시계 방향으로 90도, 180도, 2.. 더보기
[C] SW Expert Academy 문제풀이 :: 1966 번 SW Expert Academy 1966번 숫자를 정렬하자 문제풀이. 간단한 정렬 문제다. 아무 정렬이나 사용하면 된다. 버블정렬을 사용했다. 문제 https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5PrmyKAWEDFAUq&categoryId=AV5PrmyKAWEDFAUq&categoryType=CODE 주어진 N 길이의 숫자열을 오름차순으로 정렬하여 출력하라. 풀이 12345678910111213141516171819202122232425262728293031323334353637383940414243#include #include int bubbleSort(int a[], int size) { int i, j.. 더보기
[C] SW Expert Academy 문제풀이 :: 5431번 SW Expert Academy 민석이의 과제 체크하기 문제풀이. 공교롭게도 처음 푼 레벨3 문제 2개가 모두 쉬웠다. 자신감을 더욱 상승시켜준 문제. 꾸준히 준비하면 삼성 역량 테스트도 충분히 도전해볼만 하겠다. 문제 https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AWVl3rWKDBYDFAXm&categoryId=AWVl3rWKDBYDFAXm&categoryType=CODE 과제를 제출하지 않은 사람의 번호를 오름차순으로 출력하는 프로그램을 작성하라. 풀이 12345678910111213141516171819202122232425262728293031323334353637#include #include int m.. 더보기
[C] SW Expert Academy 문제풀이 :: 5356번 SW Expert Academy 5356번 의석이의 세로로 말해요 문제풀이. 간단하게 말해 배열을 세로로 출력하는 문제다. 레벨3 처음 푼 문제인데 레벨2와 차이를 못 느끼겠다. 다른 문제는 어떠려나. 문제 https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AWVWgkP6sQ0DFAUO&categoryId=AWVWgkP6sQ0DFAUO&categoryType=CODE 풀이 12345678910111213141516171819202122232425262728293031323334#include #include int main() { int tc; scanf("%d", &tc); for (int t = 0; t 더보기
[C] SW Expert Academy 문제풀이 :: 1989번 초심자의 회문 검사 문제. 회문은 거꾸로 읽어도 같은 문자를 말한다. 내 이름은 이효리 거꾸로 해도 이효리. 영어로는 Palindrome, 팰린드롬이라고 한다. 레벨4 문제를 풀다가 팰린드롬이란 말이 나왔는데 아무 설명도 없어서 따로 찾아봤다. 알아둬야할 듯. 문제 https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5PyTLqAf4DFAUq&categoryId=AV5PyTLqAf4DFAUq&categoryType=CODE 단어를 입력 받아 회문이면 1을 출력하고, 아니라면 0을 출력하는 프로그램을 작성하라. 풀이 123456789101112131415161718192021222324252627#include #in.. 더보기
[C] SW Expert Academy 문제풀이 :: 1970번 쉬운 거스름돈 문제. 정말 쉬운 문제다. 사실 이건 레벨1 문제가 아닌가 싶었는데. 거의 비슷한 문제를 아주 맨 처음 파이썬을 배울 때 예제로 봤던 것도 같다. 문제 https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5PsIl6AXIDFAUq&categoryId=AV5PsIl6AXIDFAUq&categoryType=CODE 손님에게 거슬러 주어야 할 금액 N이 입력되면돈의 최소 개수로 거슬러 주기 위하여 각 종류의 돈이 몇 개씩 필요한지 출력하라. 풀이 12345678910111213141516171819202122232425262728293031323334#include int main() { int tc; sc.. 더보기
[C] SW Expert Academy 문제풀이 :: 2001번 파리 퇴치 문제. 2차원 배열을 만들어야 하는데, 2차원 포인터로 동적할당을 사용하고 싶었다. 몇 개 풀어보니깐 2단계 문제는 알고리즘 자체가 어려운 건 없다. 다만 내가 C를 아직 능숙하게 사용하지 못해서 헷갈리는 부분이 좀 있다. 문제 https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5PzOCKAigDFAUq&categoryId=AV5PzOCKAigDFAUq&categoryType=CODE N x N 배열 안의 숫자는 해당 영역에 존재하는 파리의 개수를 의미한다.M x M 크기의 파리채를 한 번 내리쳐 최대한 많은 파리를 죽이고자 한다.죽은 파리의 개수를 구하라! 풀이 1234567891011121314151.. 더보기