주어진 데이터를 쿼리로 가져와 제어할때 그 데이터는 배열로 저장해두고 참조로 불러와 쿼리를 수행하도록 하자
https://www.acmicpc.net/problem/14648
#include <bits/stdc++.h>
using namespace std;
int main(){
int n, q;
int arr[1004]={0};
cin >> n >> q;
for(int i=1; i<=n; i++){
cin >> arr[i];
}
for(int i=0; i<q; i++){
int box;
long long s1=0;
long long s2=0;
cin >> box;
if(box==1){
int a, b;
cin >> a >> b;
for(int j=a; j<=b; j++){
s1+=arr[j];
}
cout << s1 << "\n";
swap(arr[a], arr[b]);
}
if(box==2){
int a, b, c, d;
cin >> a >> b >> c >> d;
for(int j=a; j<=b; j++){
s1+=arr[j];
}
for(int j=c; j<=d; j++){
s2+=arr[j];
}
cout << s1-s2 << "\n";
}
}
return 0;
}
'개발 노트 > 백준, 프로그래머스 풀이' 카테고리의 다른 글
[백준 1051/c++] 숫자 정사각형 (0) | 2022.06.29 |
---|---|
[백준 2941/c++] 크로아티아 알파벳 (0) | 2022.06.28 |
[백준 2745/c++] 진법 변환 - 문자열 (0) | 2022.06.25 |
[백준 11719/c++] 그대로 출력하기 2 (0) | 2022.06.24 |
[백준 1157/c++] 단어 공부 - 문자열 (0) | 2022.06.24 |
댓글