常规解法,按部就班,只能过30%:

#include <iostream>
#include <vector>
#include <algorithm>
#include <numeric>
#include <string>
#include <queue>
#include <cmath>
using namespace std;
int main()
{int n;cin>>n;int cnt=0;while(1){if(n==1)break;int a=sqrt(n);if(a*a==n){n=a;cnt++;}else{n-=1;cnt++;}}cout<<cnt<<endl;return 0;
}

下面思路来自实验室某仁兄,特此感谢!
注意到,求下一个可以开平方的数的技巧,例如:8的下一个可以开平方的数为4,怎么得到4呢,8开根号取整为2,8-2*2=4,这很关键,加快了找到下一可以开方的数的方法,故AC代码如下:

#include <iostream>
#include <math.h>
using namespace std;int main(){long long M,tag1,count=0;cin>>M;double tag;while(M>1){tag1=sqrt(M);tag=sqrt(M);if(tag1==tag){M=sqrt(M);count++;//cout<<M<<endl;}else{count=count+(M-tag1*tag1);M=tag1*tag1;//cout<<M<<endl;}if(M==1)break;}cout<<count<<endl;return 0;
}




下面的代码感谢另外一位仁兄。

#include <iostream>
#include <vector>
#include <algorithm>
#include <numeric>
#include <string>
#include <queue>
#include <cmath>
using namespace std;
int main()
{int i,a[100001],b[100001],x,y;int n;cin>>n;int jug=1; //标志完全不相同的对(不是个数)for(i=0;i<n;i++){cin>>a[i]>>b[i];}int tag1=1,tag2=1; //标志x和y//分别判断成对元素对的第一个和第二个元素是否有相同的//判断xfor(i=0;i<n;i++){if(jug<0){tag1=0;break;}if(i==0){x=a[i];y=b[i];}else{if(x!=a[i]&&y!=b[i]){x=a[i];jug--;}}}//判断yif(tag1==1){cout<<x<<" "<<y<<endl;return 0;}else{jug=1;for(i=0;i<n;i++){if(jug<0){tag2=0;break;}if(i==0){x=a[i];y=b[i];}else{if(x!=a[i]&&y!=b[i]){y=b[i];jug--;}}}}if(tag2==1)cout<<x<<" "<<y<<endl;elsecout<<"No"<<endl;return 0;
}
/*
4
1 5
3 5
1 3
5 5
*/

后记

总共4道题,做得时候除了第一题之外,其余的确实没思路,虽然用一直用python刷题,但是这不是语言的锅,刷题还是太少,没有耐心仔细分析问题。后续继续加大刷题数量和质量。

字节跳动2020秋招笔试题相关推荐

  1. 字节跳动-2020秋招-笔试题剖析【5道算法题】

    字节跳动-2020秋招-笔试题剖析[5道算法题],限时120分钟. 让我们一起来看看这些题吧! 题一:模型文件去重 [题目描述] 抖音上不同的用户类型我们有不同的用户模型文件. 我们有一个模型配置文件 ...

  2. 字节跳动2020秋招研发笔试题

    字节跳动秋招研发笔试题 最近在忙考研,高数复习完了,看了下数据结构和算法,然后对人生比较迷茫. 该不该放弃考研,又怕考不上面临找工作的问题,索性看了几家科技巨头的秋招试题,贴下来和大家分享下 基本都是 ...

  3. 2020秋招笔试题总结(华为、360、京东、中兴、快手、字节跳动、阿里、拼多多、腾讯、VIVO)~持续更新

    目录 1.华为 1.1全量和已占用字符集合 1.2解析逻辑字符串 1.3比特块 1.4文本解析 1.5社交软件好友度 2.360 2.1表面积 2.2寻找子串 2.3散步 3.京东 3.1最多能完成排 ...

  4. 2020大疆秋招笔试题B卷

    2020大疆秋招笔试题B卷 选择题(选项没抄下来)10道记了9道 1.关于常指针和指向常量的指针 2.多线程调用如下函数,a,b,c哪些需要加锁保护 int a = 0; void knit() {s ...

  5. 酷狗java秋招笔试题

    酷狗java秋招笔试题 单选题 1.在命中率极高的缓存设计中,时间复杂度最差的数据结构是( B ). A. 数组 B. 链表 C. 树 D. 哈希表 2.某二叉树共有11个结点,其叶子结点只有2个.则 ...

  6. 2021网易秋招笔试题(Android开发)

    网易笔试题(2021.08.08) 校招的笔试题通常是4道编程题,时间为2个小时,每题25分. 2021秋招笔试题总结如下,包含问题和代码实现. 题1:查找关键词 查找关键词(单词在文章中出现频率&g ...

  7. 2021字节跳动校招秋招算法面试真题解题报告--leetcode19 删除链表的倒数第 n 个结点,内含7种语言答案

    2021字节跳动校招秋招算法面试真题解题报告--leetcode19 删除链表的倒数第 n 个结点,内含7种语言答案 1.题目描述 给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点. ...

  8. 腾讯 2015秋招笔试题 编程题2:九宫格填数

    腾讯 2015秋招笔试题 编程2:九宫格填数 题目 2: 有下图的题解,请用 C/C++ 代码来列出满足下图 0-100 内的所有答案. 配合加减乘除,使得九宫格横竖都等于4. 智力冲浪 数字推理 请 ...

  9. 字节跳动2020届秋招笔试题

    字节跳动2020届秋招第一批笔试题(2019.8.11) 文章目录 字节跳动2020届秋招第一批笔试题(`2019.8.11`) 第一题[编程题25分]: 闹钟叫醒去上课 第二题[编程题25分]: 秘 ...

最新文章

  1. Matlab与线性代数 -- 矩阵的大小
  2. 程序员再也不能埋头敲代码了
  3. x_html语言名词解释,第2章++XHTML标记语言(97页)-原创力文档
  4. 敏捷开发中史诗故事与用户故事的颗粒度
  5. 安装和客户端证书颁发---puppet系列
  6. 国脉信息学院计算机网络,福建工程学院国脉信息学院《计算机网络模拟题》
  7. 科研英文论文翻译工具——Copytranslator
  8. 绿盾有办法:WPS文档加密的三板斧
  9. 二、vue组件化开发(轻松入门vue)
  10. 怎么给表格加一列序号_excel表格怎么添加序号
  11. qt自定义控件-水波纹进度条
  12. js的爬山之路原型与原型链~~狂徒李四
  13. JavaScript实现在线MD5、SHA、AES、Rabit 、RC4、TripleDES Ripemd160 加密解密工具-toolfk程序员在线工具网
  14. 支付宝生活号开发中所遇到的困难及解决记录
  15. 木子-前端-谷歌页面等调试时总是报No Found 404 错误(编码格式不识别问题导致的)
  16. html中表格实现在页面居中显示,html中怎么把表格居中
  17. linux设计 实现一个模拟的文件系统,模拟Linux文件系统.doc
  18. java 三原色_opencv3_java 提取图像的RGB三原色分割图像Split Core.split
  19. 我的世界earthmc服务器地图网站,minecraft V4.0The Earth地图
  20. java 获取post_获取POST数据的值

热门文章

  1. 使用sendBeacon进行前端数据上报
  2. 使用Dev C++运行c语言代码时碰到Failed to executeC:\c++.cpp: Error 0 :操作成功完成
  3. 计算机多媒体就业难点,【计算机专业论文】信息技术在计算机教学中的新研究(共3002字)...
  4. MATLAB调用DLL
  5. 使用阿里云实现短信发送服务(测试版)
  6. 数据湖:数据同步工具NiFi
  7. UE4地形操作出现黑框的处理
  8. SATA-AHCI规范学习
  9. 下列为非法的C语言转义字符的项目是,非法的C语言转义字符是()。
  10. Android Studio如何用无线(WiFi)连接手机进行调试