创建网站 优帮云,中文网站搭建,最新国际形势最新消息,百度托管运营哪家好【链接】 我是链接,点我呀:) 【题意】 在这里输入题意 【题解】 尺取法。 假设现在取[l..r]这一段。 然后发现累加的和小于0了。 那么方法只能是不走l..l1这一段了 即delta递减(p[l]-q[l]); 直到delta0为止。 某个时刻如果发现r1l 或者l1且rn 则合法。 如果发现l大于n了.… 【链接】 我是链接,点我呀:) 【题意】 在这里输入题意 【题解】 尺取法。 假设现在取[l..r]这一段。 然后发现累加的和小于0了。 那么方法只能是不走l..l1这一段了 即delta递减(p[l]-q[l]); 直到delta0为止。 某个时刻如果发现r1l 或者l1且rn 则合法。 如果发现l大于n了.则返回无解 【代码】 #include bits/stdc.h
#define ll long long
using namespace std;const int N 1e5;int n;
ll p[N10],q[N10];int ok(){ll now p[1]-q[1];int l 1,r 1;while (1){while (now 0){now-p[l]-q[l];l;if (ln1) return -1;}r;if (rn) r 1;nowp[r]-q[r];if ((rl-1 ||(l1 rn) ) now 0) return l;}return -1;
}int main(){int T;cin T;int kase 0;while (T--){cin n;for (int i 1;i n;i) cin p[i];for (int i 1;i n;i) cin q[i];int ju ok();if (ju-1){cout Case kase: Not possibleendl;}else{cout Case kase: Possible from station juendl;}}return 0;
} 转载于:https://www.cnblogs.com/AWCXV/p/8192496.html