[5948] : 새샘이의 7-3-5 게임 입력 : 7개의 서로 다른 정수 출력 : 7개의 정수 중 3개의 수의 합 중 5번째로 큰 수 전략 주어지는 입력이 7개의 정수이므로 만들 수 있는 합의 조합은 35개 내림 차순으로 정렬을 하고 5번째로 큰 수를 구한다 (합은 같을 수 있음 (5 + 6 + 7) = (4 + 5 + 9) 처럼) #include #include using namespace std; bool descend(int, int); int fifthLargeNum(int *); int main(void){ int testCase, sevenNums[7], sumSet[35]; cin >> testCase; for(int tc = 1; tc > sevenNums[i]; for(int x = 0;..
[6190] : 정곤이의 단조 증가하는 수 입력 : N개의 정수 → 가능한 곱셈 조합을 알아보니까 계속 된 인덱싱이 필요하므로 벡터보다는 배열이 더 적합 출력 : 단조증가 수 중 가장 큰 곱셈조합 (없으면 -1) 전략 단조 증가하는 수 판별 법 : 10으로 나누어보았을 때 직전 나머지가 현재 나머지보다 커야 함 10보다 작은 수는 단조 증가로 판단하므로 do-while 사용 #include using namespace std; bool isItIncreasingNum(int); int main(void){ int testCase; cin >> testCase; for(int tc = 1; tc > N; int *numArr = new int[..
[6730] : 장애물 경주 난이도 입력 : 블록의 높이들 → 고정된 값이고, 삽입 삭제가 일어나지 않을 예정이므로 배열(: blocks)을 사용 출력 : 1) 올라갈 때 가장 심한 높이 변화 2) 내려갈 떄 가장 심한 높이 변화 전략 blocks[i - 1]과 blocks[i]를 비교해서 up인지 down인지 판별 방금 비교한 up / down이 maxUp / maxDown 보다 큰지 판별해서 업데이트 #include using namespace std; int main(void){ int testCase; cin >> testCase; for(int t = 0; t > blockCount; // blo..
연산자는 다른 프로그래밍 언어들에서도 배우는지라 크게 설명하면서 다룰 것은 없을 것 같고, 처음보거나, 헷갈리거나 잘 쓰지 않았던 기본 연산자들을 나열식으로 짚어볼까한다. 1. Unary Minus Operator let five = 5 let minusFive = -five 2. Identity Operators JS랑 PHP에 이런게 있다고 프로그래밍언어론 할 때 잠깐 보긴 했었는데 써보진 못했던 identity operator인 === 와 !==. 상수/변수들이 정확히 같은 instance를 가르키고 있는지 알아볼 때 쓰는 연산자다. 3. Comparison Operator 비교 연산자에 대해 할 말이 있는 것은 아니고 string, tuple의 비교를 연산자로 할 수 있다는 것을 적고 싶었다. /..
Types Swift는 자료형은 여타 프로그래밍 언어들 처럼 기본적인 자료형과 collection type을 제공한다. 그 밖에도 Objective-C에서는 제공하지 않지만 python을 다뤄봤다면 아는 tuple과 Swift의 가장 강력한 도구인 optional이 있다. Swift에서 볼 수 있는 기본적인 자료형에는 정수를 나타내는 Int, 실수를 나타내기 위한 Double / Float, 논리 자료형 Bool과 text data를 위한 String이 있다. Collection type에는 Array, Set, Dictionary가 있고 직전에 언급한 tuple은 함수에서 여러 값을 return하고 싶을 때 사용할 수 있다. 가장 강력한 자료형인 optional type을 사용하면 값의 유무를 표현할 ..
이 글은 Vector와 Array 에 대해 다루겠습니다. 전체적인 내용은 eduCBA, cplusplus.com 등을 정리했습니다. 공부한 것을 정리하는 형식으로 작성되었으므로 오류가 있을 수 있습니다. 오류 발견시 댓글로 꼭 말씀해주세요! 시작해볼까요? 알고리즘 문제를 풀다보면 동적으로 원소들을 넣었다 뺐다 하는 경우가 많기 떄문에 거의 무조건적으로 vector를 쓰곤 합니다. 그래도 생각해 보면 배열을 또 아주 쓰지 않는 것은 또 아닙니다. 대학교에서 시험을 보기 위해서 공부 하던 당시 vector는 자료 접근을 자주 할 때 쓰지 않는 것이 좋다고 했던 기억이 아주 어렴풋이 있는데 그래도 뚜렷한 구분을 할 필요성은 느낍니다. (사실 프로그래머스의 이 모의고사 문제는 배열로 풀었어도 큰 무리는 없었을 ..
[1970] : 쉬운 거스름돈 #include using namespace std; void getChange(int); int main(void){ int testCase; cin >> testCase; for(int test = 0; test > changeM; getChange(changeM); } return 0; } void getChange(int money){ int mType[8]{0,}; int static trial = 1; while(money > 9){ if(money >= 50000){ mType[0] += 1; money -= 50000; } else if(money >= 10000){ mType[1] += 1..
[1859] : 백만 장자 프로젝트 #include using namespace std; int main(void) { int testCase; int day; cin >> testCase; long * ans = new long[testCase]; for (int i = 0; i > day; long * price = new long[day]; long total = 0; for (int j = 0; j > price[j]; long max = price[day - 1]; for (int j = day - 2; j > -1; j--) if (price[j] < max) total += (max - price[j]); else ma..
[1285] : 아름이의 돌 던지기 #include #include using namespace std; vector distAns; vector cntAns; void printAnswer(int); // output int getDistance(int*, int); int getCount(int*, int, int); int main(void){ int testCase; cin >> testCase; for(int test = 0; test > N; int * dist = new int[N]; for(int i = 0; i > dist[i]; if(dist[i] < 0) // 음수 쪽에 ..
[1986] : 지그재그 숫자 #include #include #include using namespace std; vector answer; void printAnswer(int); int main(void){ int testCase; cin >> testCase; for(int test = 0; test > num; for(int n = 1; n < num + 1; n++){ if(n % 2 == 0) sum -= n; else sum += n; } answer.push_back(sum); } printAnswer(testCase); return 0; } void printAnswer(int testCase){ for(in..
- Total
- Today
- Yesterday
- 소프트웨어역량시험
- ios
- 컴공졸작
- 부캠
- 커넥트재단
- 데이터분석
- 컴과졸작
- firebase
- SWIFT
- 운영체제
- 개발자인턴
- 코딩테스트
- C++
- 보안
- 인턴
- OS
- 프로그래머스
- swacademy
- TableView
- 졸업작품
- 부스트캠프
- 부스트캠프2020
- 소프트웨어아카데미
- 코테
- RxSwift
- 컴퓨터공학
- 삼성소프트웨어아카데미
- 삼성
- nosql
- 알고리즘
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 | 31 |