#include <bits/stdc++.h>
using namespace std;
int n, T, a[100005], vis[100005], ans = 0;
int main()
{
scanf("%d%d", &n, &T);
for (int i = 1; i <= n; i ++)
{
scanf("%d", &a[i]);
}
while (T --)
{
int op;
scanf("%d", &op);
if (op == 1)
{
int x, val;
scanf("%d%d", &x, &val);
a[x] = val - a[x];
vis[x] = 1;
}
else if (op == 2)
{
int l, r, val = 0, now;
scanf("%d%d", &l, &r);
for (r; r >= l; r --)
{
if (vis[r])
{
vis[r] = 0;
val = a[r], now = r;
break;
}
else
{
if (a[now] < a[r])
{
now = r;
val = a[r];
}
}
}
ans += val;
a[now] = 0;
printf("%d\n", val);
}
else
{
int l, r, val;
scanf("%d%d%d", &l, &r, &val);
for (l; l <= r; l ++)
{
a[l] += val;
}
}
}
if (ans < 10000)
{
puts("QAQ");
}
else if (ans < 10000000)
{
puts("Sakura");
}
else
{
puts("ice");
}
return 0;
}
用模拟写的,只有75pts,剩下2WA,3TLE