Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- firebase #파이어베이스
- #유데미 #udemy #웅진씽크빅 #스나이퍼팩토리 #인사이드아웃 #미래내일일경험 #프로젝트캠프 #부트캠프 #react #리액트프로젝트 #프론트엔드개발자양성과정 #개발자교육과정
- flutter #플러터 #분석
- 백준 #boj
- 비주얼스튜디오 #코드스니펫
- Flutter
- baekjoon #boj #c++
- boj #baekjoon
- flutter #todolist
- boj #baekjoon #c++
- boj #c++
- flutter #app #취준
- unity #2d-game #minigame #vscode
- baekjoon #백준 #boj
- 백준 #boj #baekjoon
- flutter #플러터
- 백준 #c++
- flutter #깃
- flutter #상태관리
- 백준
- VS #비주얼스튜디오
- flutter #firebase #플러터 #파이어베이스 #연동
- flutter #git
- 플러터 #flutter #restful #rest api
- 유데미 #udemy #웅진씽크빅 #스나이퍼팩토리 #인사이드아웃 #미래내일일경험 #프로젝트캠프 #부트캠프 #react #리액트프로젝트 #프론트엔드개발자양성과정 #개발자교육과
- unity #2d-game
- 비주얼 스튜디오 #vs #visual studio
- 인턴 #프론트엔드 #개발자 #프론트엔드개발자 #취준
- 로컬저장소 #이름변경
- git #unity #깃허브
Archives
- Today
- Total
cococo-coding
5054번. 주차의 신 (c++풀이) 본문
최종코드
총 2가지 버전으로 풀었다.
1번처럼 변수를 반복문으로 돌리는 방법과 2번처럼 배열로 인덱스마다 변수를 넣는 방식이다.
1. 상점위치를 각각 입력받기 (하나의 변수로 돌려막기)
#include <iostream>
#include <string>
using namespace std;
int main() {
//1. 테스트케이스t를 입려받는다
//2. 각 테스트케이스의 상점수n과 상점위치를 입력받는다.
//3. 거리의 최솟값을 구한다.
//4. 최솟값을 출력한다.
//1
int t=0;
cin >> t;
//2
while(t--){
int min=100, max=-1; //max min초기화
int n=0, road=0, input=0;
cin >> n;
for(int j=0; j<n; j++){
cin >> input;
//가장 먼 상점과 가장 가까운 상점 구하기
if(input<min)
min=input;
if(input>max)
max=input;
}
//3
//cout << max << ' ' <<min << endl;
road=(max-min)*2;
cout << road << endl;
}
return 0;
}
2. 배열로 상점위치 입력받기
#include <iostream>
#include <string>
using namespace std;
int main() {
//배열 ver
//1. 테스트케이스t를 입려받는다
//2. 각 테스트케이스의 상점수n과 상점위치를 입력받는다.
//3. 거리의 최솟값을 구한다.
//4. 최솟값을 출력한다.
//1
int t=0;
cin >> t;
//2
while(t--){
int min=100, max=-1; //max min초기화
int n=0, road=0;
int arr[20]={0,};
cin >> n;
for(int j=1; j<=n; j++){
cin >> arr[j];
//가장 먼 상점과 가장 가까운 상점 구하기
if(arr[j]<min)
min=arr[j];
if(arr[j]>max)
max=arr[j];
}
//3
//cout << max << ' ' <<min << endl;
road=(max-min)*2;
cout << road << endl;
}
return 0;
}
처음에는 바로 배열방식으로 풀다가 계속 에러가 나서 1번처럼 풀고, 성공한 후에 배열방식을 시도했다.
여기서 놓친 점이 하나 있다면
if-else반복문 구조에서
if - else if - else 이 구조로 쓰는데
나는 else를 빼고 그냥 if - else if로 썼더니 계속 오류가 났다.
그래서 위의 코드처럼 if 문을 하나씩 넣어줬더니 바로 성공했다ㅠㅠ
이 부분 놓치지 말자!
2023.12.08
'[BOJ] 코드 모음 > C++_learning 문제집' 카테고리의 다른 글
10821번. 정수의 개수 (c++ 풀이) (0) | 2023.12.10 |
---|---|
10987번. 모음의 개수 (c++풀이) (0) | 2023.12.09 |
11655번. ROT 13 (c++풀이) (2) | 2023.12.07 |
*1292번. 쉽게 푸는 문제 (c++풀이) (2) | 2023.12.06 |
2953번. 나는 요리사다 (c++풀이) (0) | 2023.12.06 |