F. The Answer to the Ultimate Question of Life, The Universe, and Everything.

我的第一道真·打表题

这次是真的打表啊,不是初始化求值!

重现赛的时候,一直在搞在线的做法,map和unordered_map都上了,都是TLE,初始化建立两个map,然后枚举a,b再找是否有c,我算的复杂度也就  O(T*5000*10000/2)?  2e8?好像确实得T。实际复杂度或许更高 ?

unordered_map内部哈希表实现,应该可以O(1)查找呀我感觉。stl的好用归好用,复杂度还是不太清楚。

打表的方法也是刚学的,对每个x,枚举a,b,二分找c   。 反正最好就是按一定格式打表出来,直接复制存到一个数组交上去就行了。

枚举的时候注意,三个数中至少有一个非负数,a可以在0~5000,应该能少一半的时间,也许?反正能优化就上吧。

打表的适用范围:对每个输入的数据,答案固定可知,且输入的数据范围较小。数据范围较小是重点,这里要整个更大的数x,一场比赛都打不完表。

 #include <bits/stdc++.h>
#define debug(x) cout << #x << ": " << x << endl
using namespace std;
typedef long long ll;
const int MAXN=2e5+;
const int INF=0x3f3f3f3f;
const int MOD=1e9+; int ans[][]=
{
-,,,
-,,,
-,-,,
-,,,
,,,
,,,
-,-,,
-,,,
-,,,
-,-,,
-,-,,
-,-,,
-,,,
,,,
,,,
-,-,,
-,-,,
-,,,
-,-,,
-,,,
-,-,,
-,-,,
,,,
,,,
-,,,
-,,,
-,,,
-,,,
-,-,,
-,-,,
,,,
,,,
,,,
,,,
-,-,,
-,-,,
-,,,
-,-,,
-,,,
,,,
,,,
,,,
,,,
-,-,,
-,-,,
-,,,
-,-,,
-,,,
-,-,,
,,,
,,,
-,,,
,,,
-,,,
-,-,,
-,,,
-,,,
-,,,
,,,
,,,
-,-,,
-,,,
-,-,,
-,,,
-,,,
-,,,
,,,
,,,
,,,
-,,,
-,,,
-,,,
-,-,,
-,-,,
,,,
,,,
,,,
,,,
-,-,,
-,-,,
-,-,,
-,-,,
-,,,
-,,,
,,,
,,,
,,,
-,-,,
-,-,,
-,,,
-,,,
-,-,,
-,,,
-,-,,
,,,
,,,
-,,,
-,-,,
-,-,,
-,-,,
-,-,,
-,,,
-,,,
,,,
,,,
-,-,,
-,-,,
-,,,
-,-,,
-,,,
,,,
-,-,,
,,,
,,,
,,,
-,,,
-,-,,
-,-,,
-,,,
-,-,,
-,,,
,,,
,,,
-,-,,
-,,,
-,,,
-,-,,
-,-,,
-,-,,
-,-,,
,,,
,,,
-,,,
-,,,
-,-,,
-,-,,
-,,,
-,-,,
-,-,,
,,,
,,,
-,,,
-,-,,
,,,
-,-,,
-,-,,
-,-,,
-,,,
,,,
,,,
-,,,
-,,,
-,,,
-,-,,
-,-,,
-,-,,
,,,
,,,
,,,
-,,,
-,-,,
-,-,,
-,-,,
-,-,,
-,-,,
,,,
,,,
,,,
-,-,,
-,-,,
-,-,,
-,,,
,,,
,,,
-,-,,
,,,
,,,
-,-,,
-,-,,
-,,,
,,,
-,,,
-,-,,
-,,,
,,,
,,,
-,,,
-,-,,
-,,,
-,-,,
-,-,,
-,-,,
-,,,
,,,
,,,
,,,
-,-,,
-,-,,
-,-,,
-,,,
-,-,,
}; ll qq[][]; ll check(ll t)
{
ll l=-,r=,res=INF;
while(l<=r)
{
ll mid=l+r>>;
ll tmp=mid*mid*mid;
if(tmp==t) return mid;
if(tmp>t) r=mid-;
else l=mid+;
}
return res;
} int main()
{
int t;
//init(); /* for(ll x=0;x<=200;++x)
{
ll c=INF;
for(ll i=-5000;i<=5000;++i)
{
for(ll j=-5000;j<=5000;++j)
{
ll t=x-i*i*i-j*j*j;
c=check(t);
if( abs(c)<=5000)
{
printf("%lld,%lld,%lld,\n",i,j,c);
break;
}
}
if( abs(c)<=5000) break;
}
if( abs(c)<=5000) continue;
else printf("11111,0,0,\n");
}*/
cin>>t;
while(t--)
{
int x;
cin>>x;
if(ans[x][]==) cout<<"impossible"<<endl;
else cout<<ans[x][]<<' '<<ans[x][]<<' '<<ans[x][]<<endl;
}
return ;
}

2019icpc徐州区域赛F的更多相关文章

  1. Tournament ZOJ - 4063 (青岛区域赛 F 打表)

    打表题.. 规律是找出来了 奈何优化不了 .... #include <iostream> #include <cstdio> #include <sstream> ...

  2. HDU 4818 RP problem (高斯消元, 2013年长春区域赛F题)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4818 深深地补一个坑~~~ 现场赛坑在这题了,TAT.... 今天把代码改了下,过掉了,TAT 很明显 ...

  3. 2018-2019 ACM-ICPC 徐州区域赛 部分题解

    题目链接:2018-2019 ACM-ICPC, Asia Xuzhou Regional Contest A. Rikka with Minimum Spanning Trees 题意: 给出一个随 ...

  4. 高精度乘法-17南宁区域赛F -The Chosen One

    题目大意:给你一个n,然后从1~n隔一个选一个,挑出一个集合然后从集合中继续隔一个挑一个,直到只有一个数,问最后一个数是多少?2<=n<=1050 例如n=5,先选出2,4最后选择4.n= ...

  5. 2018 icpc 徐州网络赛 F Features Track

    这个题,我也没想过我这样直接就过了 #include<bits/stdc++.h> using namespace std; ; typedef pair<int,int> p ...

  6. 17 南宁区域赛 F - The Chosen One 【规律】

    题目链接 https://nanti.jisuanke.com/t/19972 题意 给出一个n 然后将 n 个数 标号为 1 -> n 按顺序排列 每次抽掉 奇数位的数 然后求最后剩下那个数字 ...

  7. 2018ICPC徐州区域赛网络赛G(VECTOR+SET,模拟)

    #include<bits/stdc++.h>using namespace std;int x,y;vector<int>v1,v2;long long solve(vect ...

  8. 2018ICPC徐州区域赛网络赛B(逆序枚举或者正序深度搜索)

    #include<bits/stdc++.h>using namespace std;int n,m,k,l;int x[1007],y[1007],z[1007];int dp[1007 ...

  9. HDU 4786 最小生成树变形 kruscal(13成都区域赛F)

    Fibonacci Tree Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)To ...

随机推荐

  1. docker概念

    一.docket概述 什么是docker? 为什么docker会出现 一款产品从开发到上线,从操作系统,到运行环境,再到应用配置.作为开发+运维之间的协作我们需要关心很多东西,这也是很多互联网公司都不 ...

  2. c# 窗体开发3 文件处理技术

    以字节形式向磁盘写入数据通常称为字节流(比特流) 常常使用System.Io 常用的类 类 说明 File 提供用于创建.复制.删除.移动和打开文件的静态方法,并协助创建 FileStream 对象. ...

  3. 关于servlet报错和jsp中报关于servlet的错误

    servlet-api是对servlet的支持,如果你导入别人的项目后出现servlet中的导包处出现关于javax.servlet.的错误,那么就是缺少这个包了.还有对jsp页面中的报错的支持. 下 ...

  4. 普通用户修改时间 sudo

    sudo date neokylinV7.0  desktop 1.给/etc/sudoers加权限 # chmod u+w /etc/sudoers 2.添加配置 # vim /etc/sudoer ...

  5. IDEA启动tomcat报java.net.SocketExceptionsocket closed

    IDEA启动tomcat报java.net.SocketException:socket closed.如图所示   解决方法:打开任务管理器,检查有没有java.exe进程. 关闭了重新启动就好了 ...

  6. git 路上的拦路虎 了解一下

    我们提交代码现在大部分都在用git  管理代码,有时候会遇到一些问题 用git 会发现一些问题 之前报了一些错误,没有记录,这次记录一下,顺便写一下解决方式: 输输入git remote add or ...

  7. 即将到来的“分布式云”(DPaaS):分布式计算+ DB +存储即服务

    我在区块链会议上就即将到来的公共"分布式云"系统进行了讨论,该系统将主流的公共云平台(如AWS,Azure,Google Cloud,Heroku等)与区块链和P2P网络相结合,比 ...

  8. python 计算两个日期间的小时数

    #!/usr/bin/env python #encoding: utf-8 import datetime def dateDiffInHours(t1, t2): td = t2 - t1 ret ...

  9. 如何利用 Open Live Writer 在本地发布WordPress博客文章

    [导读] Open Live Writer是由Windows Live WriterWriter更名而来,是由微软推出的一款能够免费使用的博客写作软件. Open Live Writer 可以支持大多 ...

  10. 三菱PLC和卓岚串口服务器使用心得

    下面介绍使用FX3u-16M以及卓岚产品ZLAN5103,实现GX Works通过虚拟串口监控PLC 一.PLC通讯口 圆头8孔RS422接口,线序如下: 1.FX3u不同子型号的PLC,引脚定义可能 ...