hdu 1166 (트 리 배열 입문)
#include <iostream>
#include <cstdio>
#include <cstring>
#define M 10
using namespace std;
const int MAX = 50010;
int a[MAX], c[MAX];
int n;
int lowbit(int x){
return x&(-x);
}
int sum(int len){
int temp = len;
int result = 0;
while(temp>0){
result = result + c[temp];
temp = temp - lowbit(temp);
}
return result;
}
void get_result(int from, int to){
int temp1 = sum(from - 1);
int temp2 = sum(to);
int t = temp2 - temp1;
printf("%d
", t);
}
void update(int x, int value){
while(x <= n){
c[x] = c[x] + value;
x = x + lowbit(x);
}
}
int init(int n) {
for (int i = 0; i <= n; i++) {
a[i] = 0;
c[i] = 0;
}
return 0;
}
int main()
{
int T, loc, temp;
char tem[M];
scanf("%d", &T);
for(int k = 1; k <= T; k++) {
printf("Case %d:
", k);
scanf("%d", &n);
init(n);
for(int j = 1; j <= n; j++){
scanf("%d", &a[j]);
update(j, a[j]);
}
while(scanf("%s", tem)!=EOF && tem[0] != 'E'){
scanf("%d%d", &loc, &temp);
switch(tem[0]){
case 'Q': get_result(loc, temp); break;
case 'A': update(loc, temp); break;
case 'S': update(loc, temp*(-1)); break;
}
}
}
return 0;
}
/********************
10
10
1 2 3 4 5 6 7 8 9 10
Query 1 3
Add 3 6
Query 2 7
Sub 10 2
Add 6 3
Query 3 10
End
******************/
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Docker를 사용한 React 및 .NET Core 6.0 샘플 프로젝트 - 1부이 기사에서는 Entity Framework Core Code First 접근 방식을 사용하는 ASP.NET Core 6.0 WEP API의 CRUD(만들기, 읽기, 업데이트 및 삭제) 작업에 대해 설명합니다. 웹 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.