题解

回收卫星

#pragma GCC optimize(2)
#pragma GCC optimize(3)
#pragma GCC optimize(4)
#include<bits/stdc++.h>
using namespace std;
#define y1 y11
#define fi first
#define se second
#define pi acos(-1.0)
#define LL long long
//#define mp make_pair
#define pb push_back
#define ls rt<<1, l, m
#define rs rt<<1|1, m+1, r
#define ULL unsigned LL
#define pll pair<LL, LL>
#define pli pair<LL, int>
#define pii pair<int, int>
#define piii pair<pii, int>
#define pdd pair<double, double>
#define mem(a, b) memset(a, b, sizeof(a))
#define debug(x) cerr << #x << " = " << x << "\n";
#define fio ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);
//head int main() {
LL l = , r = 2e9, m = l+r+ >> ;
int f;
while(l < r) {
cout << << " " << m << " " << << " " << << endl;
cin >> f;
if(f) l = m;
else r = m-;
m = l+r+ >> ;
}
LL x1 = m;
l = , r = 2e9, m = l+r+ >> ;
while(l < r) {
cout << << " " << -m << " " << << " " << << endl;
cin >> f;
if(f) l = m;
else r = m-;
m = l+r+ >> ;
}
LL x2 = -m;
LL x = (x1+x2)/;
l = , r = 2e9, m = l+r+ >> ;
while(l < r) {
cout << << " " << x << " " << m << " " << << endl;
cin >> f;
if(f) l = m;
else r = m-;
m = l+r+ >> ;
}
LL y1 = m;
l = , r = 2e9, m = l+r+ >> ;
while(l < r) {
cout << << " " << x << " " << -m << " " << << endl;
cin >> f;
if(f) l = m;
else r = m-;
m = l+r+ >> ;
}
LL y2 = -m;
LL y = (y1+y2)/;
l = , r = 2e9, m = l+r+ >> ;
while(l < r) {
cout << << " " << x << " " << y << " " << m << endl;
cin >> f;
if(f) l = m;
else r = m-;
m = l+r+ >> ;
}
LL z1 = m;
l = , r = 2e9, m = l+r+ >> ;
while(l < r) {
cout << << " " << x << " " << y << " " << -m << endl;
cin >> f;
if(f) l = m;
else r = m-;
m = l+r+ >> ;
}
LL z2 = -m;
LL z = (z1+z2)/;
cout << << " " << x << " " << y << " " << z << endl;
return ;
}

解题

#pragma GCC optimize(2)
#pragma GCC optimize(3)
#pragma GCC optimize(4)
#include<bits/stdc++.h>
using namespace std;
#define y1 y11
#define fi first
#define se second
#define pi acos(-1.0)
#define LL long long
//#define mp make_pair
#define pb push_back
#define ls rt<<1, l, m
#define rs rt<<1|1, m+1, r
#define ULL unsigned LL
#define pll pair<LL, LL>
#define pli pair<LL, int>
#define pii pair<int, int>
#define piii pair<pii, int>
#define pdd pair<double, double>
#define mem(a, b) memset(a, b, sizeof(a))
#define debug(x) cerr << #x << " = " << x << "\n";
#define fio ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);
//head const int N = 1e6 + , M = 5e7 + ;
char s[N];
int pos[M], m;
int main() {
int q;
scanf("%s", s+);
int n = strlen(s+);
scanf("%d", &q);
while(q--) {
scanf("%d", &m);
int now = , l, r;
for (int i = ; i <= m; ++i) pos[i] = ;
int b = ;
for (int i = n; i >= ; i--) {
now = ((s[i]-'')*b + now) % m;
b = (b * ) % m;
if(now == ) {
l = i, r = n;
break;
}
if(pos[now]) {
l = i, r = pos[now]-;
break;
}
pos[now] = i;
}
printf("%d %d\n", l, r);
}
return ;
}

魔板

进制转换

#pragma GCC optimize(2)
#pragma GCC optimize(3)
#pragma GCC optimize(4)
#include<bits/stdc++.h>
using namespace std;
#define y1 y11
#define fi first
#define se second
#define pi acos(-1.0)
#define LL long long
//#define mp make_pair
#define pb push_back
#define ls rt<<1, l, m
#define rs rt<<1|1, m+1, r
#define ULL unsigned LL
#define pll pair<LL, LL>
#define pli pair<LL, int>
#define pii pair<int, int>
#define piii pair<pii, int>
#define pdd pair<double, double>
#define mem(a, b) memset(a, b, sizeof(a))
#define debug(x) cerr << #x << " = " << x << "\n";
#define fio ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);
//head
const LL INF = 1e18 + ;
LL l, r;
int k, m;
LL solve(LL n) {
LL b = ;
for (int i = ; i <= m; ++i) {
if(INF/k >= b) b *= k;
else {
b = INF;
break;
}
}
LL bb = ;
if(INF/k >= b) bb = b*k;
else bb = INF;
return n/b - n/bb;
}
int main() {
int T;
scanf("%d", &T);
while(T--) {
scanf("%lld %lld %d %d", &l, &r, &k, &m);
printf("%lld\n", solve(r) - solve(l-));
}
return ;
}

中位数

#pragma GCC optimize(2)
#pragma GCC optimize(3)
#pragma GCC optimize(4)
#include<bits/stdc++.h>
using namespace std;
#define y1 y11
#define fi first
#define se second
#define pi acos(-1.0)
#define LL long long
//#define mp make_pair
#define pb push_back
#define ls rt<<1, l, m
#define rs rt<<1|1, m+1, r
#define ULL unsigned LL
#define pll pair<LL, LL>
#define pli pair<LL, int>
#define pii pair<int, int>
#define piii pair<pii, int>
#define pdd pair<double, double>
#define mem(a, b) memset(a, b, sizeof(a))
#define debug(x) cerr << #x << " = " << x << "\n";
#define fio ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);
//head const int N = 1e6 + ;
const int INF = 0x3f3f3f3f;
vector<int> g[N];
int a[N], d[N], in[N];
int topo[N];
int n, m, u, v;
bool vis[N];
queue<int> q;
stack<int> st;
void Topo() {
for (int i = ; i <= n; ++i) {
if(in[i] == ) q.push(i);
}
int cnt = ;
while(!q.empty()) {
int u = q.front();
topo[++cnt] = u;
q.pop();
for (int v : g[u]) {
in[v]--;
if(in[v] == ) q.push(v);
}
}
}
bool ck(int m) {
for (int i = ; i <= n; ++i) d[i] = -INF;
d[] = ((a[] >= m)? : -);
for (int i = ; i <= n; ++i) {
int u = topo[i];
if(!vis[u]) continue;
for (int v : g[u]) {
d[v] = max(d[v], d[u]+((a[v] >= m)? : -));
}
}
return d[n] >= ;
}
int main() {
scanf("%d %d", &n, &m);
for (int i = ; i <= n; ++i) scanf("%d", &a[i]);
for (int i = ; i <= m; ++i) {
scanf("%d %d", &u, &v);
g[u].pb(v);
in[v]++;
}
Topo();
st.push();
while(!st.empty()) {
int u = st.top();
st.pop();
if(vis[u]) continue;
vis[u] = true;
for (int v : g[u]) {
if(!vis[v]) st.push(v);
}
}
if(!vis[n]) {
puts("-1");
exit();
}
int l = , r = 1e9, mid = l+r+ >> ;
while(l < r) {
if(ck(mid)) l = mid;
else r = mid-;
mid = l+r+ >> ;
}
printf("%d\n", mid);
return ;
}

方差

#pragma GCC optimize(2)
#pragma GCC optimize(3)
#pragma GCC optimize(4)
#include<bits/stdc++.h>
using namespace std;
#define y1 y11
#define fi first
#define se second
#define pi acos(-1.0)
#define LL long long
//#define mp make_pair
#define pb push_back
#define ls rt<<1, l, m
#define rs rt<<1|1, m+1, r
#define ULL unsigned LL
#define pll pair<LL, LL>
#define pli pair<LL, int>
#define pii pair<int, int>
#define piii pair<pii, int>
#define pdd pair<double, double>
#define mem(a, b) memset(a, b, sizeof(a))
#define debug(x) cerr << #x << " = " << x << "\n";
#define fio ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);
//head const LL INF = 0x7f7f7f7f7f7f7f7f;
const int N = 1e6 + , M = 1e3 + ;
int a[N], cnt[M], sum[M];
int main() {
int n, m;
scanf("%d %d", &n, &m);
for (int i = ; i <= n; ++i) scanf("%d", &a[i]);
LL ans = INF, x = , y = ;
sort(a+, a++n);
for (int i = ; i <= n; ++i) {
if(i <= m) {
x += 1LL*a[i]*a[i];
y += a[i];
}
else {
x -= 1LL*a[i-m]*a[i-m];
x += 1LL*a[i]*a[i];
y -= a[i-m];
y += a[i];
}
if(i >= m) ans = min(ans, m*x - y*y);
}
printf("%lld\n", ans);
return ;
}

EOJ Monthly 2019.2的更多相关文章

  1. EOJ Monthly 2019.2 题解(B、D、F)

    EOJ Monthly 2019.2 题解(B.D.F) 官方题解:https://acm.ecnu.edu.cn/blog/entry/320/ B. 解题 单测试点时限: 2.0 秒 内存限制:  ...

  2. EOJ Monthly 2019.11 E. 数学题(莫比乌斯反演+杜教筛+拉格朗日插值)

    传送门 题意: 统计\(k\)元组个数\((a_1,a_2,\cdots,a_n),1\leq a_i\leq n\)使得\(gcd(a_1,a_2,\cdots,a_k,n)=1\). 定义\(f( ...

  3. EOJ Monthly 2019.2 (based on February Selection) F.方差

    题目链接: https://acm.ecnu.edu.cn/contest/140/problem/F/ 题目: 思路: 因为方差是用来评估数据的离散程度的,因此最优的m个数一定是排序后连续的,所以我 ...

  4. EOJ Monthly 2019.2 (based on February Selection) D.进制转换

    题目链接: https://acm.ecnu.edu.cn/contest/140/problem/D/ 题目: 思路: 我们知道一个数在某一个进制k下末尾零的个数x就是这个数整除kx,这题要求刚好末 ...

  5. EOJ Monthly 2019.2 (based on February Selection) D 进制转换 【数学 进制转换】

    任意门:https://acm.ecnu.edu.cn/contest/140/problem/D/ D. 进制转换 单测试点时限: 2.0 秒 内存限制: 256 MB “他觉得一个人奋斗更轻松自在 ...

  6. EOJ Monthly 2019.1 唐纳德先生与这真的是签到题吗 【数学+暴力+multiset】

    传送门:https://acm.ecnu.edu.cn/contest/126/ C. 唐纳德先生与这真的是签到题吗 单测试点时限: 6.0 秒 内存限制: 1024 MB 唐纳德先生在出月赛的过程中 ...

  7. EOJ Monthly 2019.3 A

    A. 钝角三角形 单点时限: 3.0 sec 内存限制: 512 MB QQ 小方以前不会判断钝角三角形,现在他会了,所以他急切的想教会你. 如果三角形的三边长分别为 a, b, c (a≤b≤c), ...

  8. eoj monthly 2019.11

    原题 T1 纸条 题目大意: 给出一个长度为n的字符串,其中m位未知,对于每一位未知的字母,有k个备选字母,最终答案为备选字母按字典序排序后的第x个. 题解: 签到题-- 按照题目意思直接写就可以了. ...

  9. EOJ Monthly 2019.2 E. 中位数 (二分+dfs)

    题目传送门 题意: 在一个n个点,m条边的有向无环图中,求出所有从1到n 的路径的中位数的最大值 一条路径的中位数指的是:一条路径有 n 个点, 将这 n 个点的权值从小到大排序后,排在位置 ⌊n2⌋ ...

随机推荐

  1. Percona-Toolkit 之 pt-online-schema-change 总结

    pt-online-schema-change - ALTER tables without locking them. pt-online-schema-change alters a table' ...

  2. libpng warning: iCCP: known incorrect sRGB profile

    参考  http://www.cocos2d-x.org/forums/6/topics/49093 解决 I got the following warnings in console when r ...

  3. 为什么CentOS7中找不到mysql服务,并且还找不到mysql.sock?

    个人遇到问题的经过: 我一个月前买了云主机,UI图画好了,前端也写了,php如何开发也想好了,结果呢,安装apache是成功了,mysql看样子也是安装成功了,但是mysql根本无法运行起来,搞得我无 ...

  4. 5分钟安装 关于win10安装composer PHP 用来管理依赖(dependency)关系的工具

    1.在你的phpstudy或者wamp中开启extension=php_openssl.dll扩展 (php配置文件)并配置好php的环境变量 2.在与你安装phpstudy和wamp不一样的盘中创建 ...

  5. Docker日志收集最佳实践

    传统日志处理 说到日志,我们以前处理日志的方式如下: · 日志写到本机磁盘上 · 通常仅用于排查线上问题,很少用于数据分析 ·需要时登录到机器上,用grep.awk等工具分析 那么,这种方式有什么缺点 ...

  6. Kali-Dos洪水攻击之Hping3

    在计算机行业,拒绝服务(DoS)或分布式拒绝服务(DDoS)攻击是指不法分子企图让某机器或网络资源无法被预期的用户所使用.虽然执行DoS攻击的方式.动机和目标不一样,但通常包括设法临时性或无限期中断或 ...

  7. SpringBoot整合Apache Shiro权限验证框架

    比较常见的权限框架有两种,一种是Spring Security,另一种是Apache Shiro,两种框架各有优劣,个人感觉Shiro更容易使用,更加灵活,也更符合RABC规则,而且是java官方更推 ...

  8. Ajax不执行回调函数的原因(转)

    今天用ajax的post请求后台,但是始终不执行回调函数,经查得知,ajax不执行回调函数的原因如下: jquery中规定返回的JSON字符串的KEY要用引号括起来,如{“result”: 1}这样才 ...

  9. CLASS 类 __getattr__

    class Chain(object): def __init__(self, path=''): self._path = path def __getattr__(self, path): ret ...

  10. 基于PLC1850平台的UDP报文接收与发送

    一.UDP报文格式 源端口(2个字节):发送报文的进程的16位端口号. 目的端口(2个字节):目的设备上的接收进程的16位端口号. 长度(2个字节):整个UDP数据报的长度,包括首都和数据字段. 校验 ...