티스토리 뷰
[5948] : 새샘이의 7-3-5 게임
- 입력 : 7개의 서로 다른 정수
- 출력 : 7개의 정수 중 3개의 수의 합 중 5번째로 큰 수
- 전략
- 주어지는 입력이 7개의 정수이므로 만들 수 있는 합의 조합은 35개
- 내림 차순으로 정렬을 하고 5번째로 큰 수를 구한다 (합은 같을 수 있음 (5 + 6 + 7) = (4 + 5 + 9) 처럼)
#include <iostream>
#include <algorithm>
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 <= testCase; tc++){
int pos = 0;
for(int i = 0; i < 7; i++) cin >> sevenNums[i];
for(int x = 0; x < 5; x++){
for(int y = x + 1; y < 6; y++){
for(int z = y + 1; z < 7; z++){
sumSet[pos++] = sevenNums[x] + sevenNums[y] + sevenNums[z];
}
}
}
// 내림차순으로 정렬
sort(sumSet,sumSet + 35, descend);
cout << "#" << tc << " " << fifthLargeNum(sumSet) << endl;
}
return 0;
}
bool descend(int a, int b){
return a > b;
}
int fifthLargeNum(int *sumSet){
int unique = 0, order = 0;
for(int i = 0; order < 5; i++){
if(unique != sumSet[i]){
order++;
unique = sumSet[i];
}
}
return unique;
}
[5789] : 현주의 상자 바꾸기
- 입력 : N개의 상자, 작업 횟수 Q, 숫자 변경할 범위 L~R
- 출력 : 상자에 적혀있는 값
- 전략
- 배열을 동적할당 해서 배열의 값 바꾸며 풀지뭐 간.단.
#include <iostream>
using namespace std;
int main(void){
int testCase;
cin >> testCase;
for(int tc = 1; tc <= testCase; tc++){
int N, Q;
cin >> N >> Q;
// N개의 상자 생성 & 초기화
int *boxes = new int[N];
for(int n = 0; n < N; n++) boxes[n] = 0;
//작업
int L, R;
for(int i = 1; i < Q + 1; i++){
cin >> L >> R;
for(int change = L - 1; change < R; change++)
boxes[change] = i;
}
// print answer
cout << "#" << tc << " ";
for(int n = 0; n < N; n++)
cout << boxes[n] << " ";
cout << endl;
}
return 0;
}
[5549] : 홀수일까 짝수일까
- 입력 : 100자리 이하의 양의 정수
- 출력 : 홀수인지 짝수인지
- 전략
- 일부러 100자리 양의 정수라고 했겠지. 문자열로 받아서 마지막 자리가 짝수인지 홀수인지만 확인하면 된다,
#include <iostream>
using namespace std;
int main(void){
int testCase;
cin >> testCase;
for(int tc = 1; tc <= testCase; tc++){
string N;
cin >> N;
int length = N.length();
char lastChar = N[length - 1];
if(int(N[length - 1]) % 2 == 0)
cout << "#" << tc << " Even" << endl;
else
cout << "#" << tc << " Odd" << endl;
}
return 0;
}
'CS > 알고리즘' 카테고리의 다른 글
[C++] 알고 쓰자 라이브러리 ① <string> (0) | 2019.12.22 |
---|---|
[C++] 자료형 무시하지 마라 (0) | 2019.12.19 |
[SWEA] D3 : 6190, 6057, 6019, 5986 (0) | 2019.07.24 |
[SWEA] D3 : 6730, 6718, 6692, 6485 (0) | 2019.07.17 |
[C++] Array 와 Vector 한 방에 비교하기 (1) | 2019.06.24 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 보안
- 인턴
- ios
- 부캠
- 졸업작품
- 컴공졸작
- 코딩테스트
- 운영체제
- 코테
- nosql
- 커넥트재단
- RxSwift
- 소프트웨어역량시험
- 부스트캠프
- swacademy
- 프로그래머스
- 컴퓨터공학
- 알고리즘
- C++
- OS
- TableView
- 데이터분석
- 삼성
- 개발자인턴
- firebase
- SWIFT
- 부스트캠프2020
- 삼성소프트웨어아카데미
- 컴과졸작
- 소프트웨어아카데미
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
글 보관함