A:简单计算
#include <iostream>
using namespace std;
int main()
{
int a, b, c, d;
cin >> a >> b >> c >> d;
int num = a * b + c * d;
cout << num << endl;
return 0;
}
B:餐厅
二分+前缀和:
#include <iostream>
#include <cstring>
using namespace std;
const int N = 2e5 + 10;
typedef long long LL;
LL s[N];
int n, q;
int binary (LL sum)
{
int l = 0, r = n;
while (l < r)
{
int mid = l + r + 1>>1 ;
if (s[mid] <= sum) l = mid;
else r = mid - 1;
}
return n-l;
}
int main()
{
cin >> n >> q;
for (int i = 1; i <= n; i++)
{
int x;
cin >> x;
s[i] = s[i - 1] + x;
}
LL sum = 0;
while (q--)
{
LL x;
cin >> x;
sum += x;
if (sum >= s[n]) sum = 0;
printf("%d\n", binary(sum));
}
return 0;
}