2019icpc徐州区域赛F
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的更多相关文章
- Tournament ZOJ - 4063 (青岛区域赛 F 打表)
打表题.. 规律是找出来了 奈何优化不了 .... #include <iostream> #include <cstdio> #include <sstream> ...
- HDU 4818 RP problem (高斯消元, 2013年长春区域赛F题)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4818 深深地补一个坑~~~ 现场赛坑在这题了,TAT.... 今天把代码改了下,过掉了,TAT 很明显 ...
- 2018-2019 ACM-ICPC 徐州区域赛 部分题解
题目链接:2018-2019 ACM-ICPC, Asia Xuzhou Regional Contest A. Rikka with Minimum Spanning Trees 题意: 给出一个随 ...
- 高精度乘法-17南宁区域赛F -The Chosen One
题目大意:给你一个n,然后从1~n隔一个选一个,挑出一个集合然后从集合中继续隔一个挑一个,直到只有一个数,问最后一个数是多少?2<=n<=1050 例如n=5,先选出2,4最后选择4.n= ...
- 2018 icpc 徐州网络赛 F Features Track
这个题,我也没想过我这样直接就过了 #include<bits/stdc++.h> using namespace std; ; typedef pair<int,int> p ...
- 17 南宁区域赛 F - The Chosen One 【规律】
题目链接 https://nanti.jisuanke.com/t/19972 题意 给出一个n 然后将 n 个数 标号为 1 -> n 按顺序排列 每次抽掉 奇数位的数 然后求最后剩下那个数字 ...
- 2018ICPC徐州区域赛网络赛G(VECTOR+SET,模拟)
#include<bits/stdc++.h>using namespace std;int x,y;vector<int>v1,v2;long long solve(vect ...
- 2018ICPC徐州区域赛网络赛B(逆序枚举或者正序深度搜索)
#include<bits/stdc++.h>using namespace std;int n,m,k,l;int x[1007],y[1007],z[1007];int dp[1007 ...
- HDU 4786 最小生成树变形 kruscal(13成都区域赛F)
Fibonacci Tree Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)To ...
随机推荐
- 测试访问apiserver状态
目录 前言 创建admin证书和私钥 分发kubeconfig文件 检查集群信息 授权kube-apiserver访问kubelet API的权限 前言 到这里,ETCD集群.kube-nginx + ...
- Leetcode_01【两数之和】
文章目录: 题目 脚本一及注释 脚本逻辑 脚本二及注释 脚本逻辑 题目: 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标. ...
- udp协议以及socketserver
udb协议 udb协议也是一种协议,它和tcp相比既有缺点也有优点 udb协议所发送的数据可以理解为自带报头,所以他不会出现粘包的情况.但是udp数据只管发送而不管接收,也就是说udp会出现丢包的情况 ...
- 虚拟机中linux操作系统raid5(5块磁盘,3块做raid,2块做备份)配置流程及损坏磁盘的移除
1.打开所要用的虚拟机,点击编辑虚拟机设置,点击硬盘,添加 2.一直点击下一步不做修改,直到最后完成 3.按照以上步骤添加5块磁盘 4.点击开启虚拟机,输入用户名root密码登录进去 5.进入虚拟机后 ...
- 小白的springboot之路(一)、环境搭建、第一个实例
小白的springboot之路(一).环境搭建.第一个实例 0- 前言 Spring boot + spring cloud + vue 的微服务架构技术栈,那简直是爽得不要不要的,怎么爽法,自行度娘 ...
- 基于Docker快速搭建ELK【华为云技术分享】
[摘要] 本文基于自建的Docker平台速搭建一套完整的ELK系统,相关的镜像直接从Docker Hub上获取,可以快速实现日志的采集和分析检索. 准备镜像 l 获取ES镜像:docker pull ...
- 基于Docker搭建分布式消息队列Kafka
本文基于Docker搭建一套单节点的Kafka消息队列,Kafka依赖Zookeeper为其管理集群信息,虽然本例不涉及集群,但是该有的组件都还是会有,典型的kafka分布式架构如下图所示.本例搭建的 ...
- 【Python成长之路】装逼的一行代码:快速共享文件【华为云分享】
[写在前面] 有时候会与同事共享文件,正常人的操作是鼠标右键,点击共享.其实有个装逼的方法,用python的一行代码快速实现基于http服务的共享方式. [效果如下] [示例代码] 在cmd窗口进入想 ...
- 如何使用modelarts训练海量数据
在modelarts上使用notebook上使用evs空间默认大小是5G,能满足大部分文本和图片训练模型的需求.如果训练数据稍微超过这个限额,可以适当的扩增下空间.但如果训练对象是视频,或是实际生成过 ...
- elementUI最新版的el-select使用filterable无效无法匹配正确搜索结果的Bug解决办法
Bug描述: 今天做开发时遇到一个elementUI存在的bug. 当el-select使用filterable功能搜索时,如果你恰巧使用的是微软拼音输入法,那么你有可能会遇到搜索结果和输入的值不匹配 ...