关键词:
1:实现一个 36 进制的加法 0-9 a-z。
#include<bits/stdc++.h>
typedef long long ll;
const ll N=2e5+10;
using namespace std;
int s[N];
int main()
int _;
string a,b;
while(cin>>a>>b)
string ans;
int pos;
reverse(a.begin(), a.end());
reverse(b.begin(), b.end());
for(int i=0;i<max(a.size(),b.size());i++)
int x;
x=pos;
char q;
if(a[i]>='a'&&a[i]<='z')
x=a[i]-'a'+10;
if(a[i]>='0'&&a[i]<='9')
x=a[i]-'0';
if(b[i]>='a'&&b[i]<='z')
x+=b[i]-'a'+10;
if(b[i]>='0'&&b[i]<='9')
x+=b[i]-'0';
if(x>=36)
x-=36;
pos=1;
else pos=0;
if(x>=10)
q='a'+x-10;
ans+=q;
else
q='0'+x;
ans+=q;
if(pos!=0) ans+='1';
reverse(ans.begin(), ans.end());
cout<<ans<<"\\n";
2、抖音电影票业务支持电影院选座,需要在用户买票时自动推荐座位,如果一个用户买了多张票,则需要推荐相邻(上下相邻、左右相邻都可)的座位。现在使用一个二维数组来表示电影院的座位,数组中 0 表示未被选座,1 表示已被选座或者为障碍物,请实现一个方法求出给定影院中最大可推荐的相邻座位个数。
没调试
#include<bits/stdc++.h>
typedef long long ll;
const ll N=2e2+10;
using namespace std;
int a[N][N];//不写输入了
int fa[N*N];
int sum[N*N];
int n;
int find(int x)
if(x == fa[x]) return fa[x];
return fa[x] = find(fa[x]);
void add(int a,int b)
if(find(a)!=find(b))
fa[find(a)] = find(b);
sum[b]=sum[a]+sum[b];
return ;
int main()
for(int i=1;i<=n;i++)
for(int j=1;j<=n;j++)
fa[(i-1)*n+j]=(i-1)*n+j;
a[i][j]=1-a[i][j];
if(a[i][j]==1) sum[(i-1)*n+j]=1;
for(int i=1;i<=n;i++)
for(int j=1;j<=n;j++)
if(a[i][j]==1)
if(a[i-1][j]==1) add((i-1)*n+j,(i-2)*n+j);
if(a[i+1][j]==1) add((i-1)*n+j,(i)*n+j);
if(a[i][j-1]==1) add((i-1)*n+j,(i-1)*n+j-1);
if(a[i][j+1]==1) add((i-1)*n+j,(i-2)*n+j+1);
int maxx=0;
for(int i=1;i<=n;i++)
for(int j=1;j<=n;j++)
maxx=max(maxx,sum[(i-1)*n+j]);
cout<<maxx<<"\\n";
3、有效 IP 地址正好由四个整数(每个整数位于 0 到 255 之间组成,且不能含有前导 0),整数之间用 '.' 分隔。
例如:"0.1.2.201" 和 "192.168.1.1" 是有效 IP 地址,但是 "0.011.255.245"、"192.168.1.312" 和 "192.168@1.1" 是无效 IP 地址。
给定一个字符串 s,非数字的字符可替换为任意不包含在本字符串的数字,同样的字符只能替换为同样的数字,用以表示一个 IP 地址,返回所有可能的有效 IP 地址,这些地址可以通过在 s 中插入 '.' 来形成。你不能重新排序或删除 s 中的任何数字,你可以按任何顺序返回答案。
#include<bits/stdc++.h>
typedef long long ll;
const ll N=2e2+10;
using namespace std;
void helper(string s, int n, string out, vector<string>& res)
if (n == 4)
if (s.empty()) res.push_back(out);
else
for (int k = 1; k < 4; ++k)
if (s.size() < k) break;
int val = atoi(s.substr(0, k).c_str());
if (val > 255 || k != to_string(val).size()) continue;
helper(s.substr(k), n + 1, out + s.substr(0, k) + (n == 3 ? "" : "."), res);
void check(string s)
vector<string> res;
string out;
helper(s,0,out,res);
for (int i = 0; i < res.size(); i++)
cout << res[i] << endl;
map<char,int>mp;
set<string> st;
int pos[10];
void find(string s,int x)
for(int i=x;i<s.size();i++)
if(s[i]>='a'&&s[i]<='z')
char a=s[i];
if(mp[s[i]]==0)
for(int j=0;j<=9;j++)
if(pos[j]!=0) continue;
mp[a]=j+1;
pos[j]=1;
// cout<<a<<" "<<mp[s[i]]<<" ";
s[i]=j+'0';
if(i==s.size()-1)
st.insert(s);
cout<<s;
else
find(s,i+1);
s[i]=a;
pos[j]=0;
mp[a]=0;
else
s[i]=mp[s[i]]+'0'-1;
if(i==s.size()-1)
st.insert(s);
cout<<s;
else
find(s,i+1);
s[i]=a;
//s[i]=a;
//cout<<s[i]<<" "<<mp[s[i]]<<" ";
//cout<<s<<"\\n";
st.insert(s);
return ;
int main()
string s;
cin>>s;
for(int i=0;i<=s.size();i++)
if(s[i]>='0'&&s[i]<='9')
pos[s[i]-'0']=1;
find(s,0);
for(set<string>::iterator i=st.begin();i!=st.end();i++)
check(*i);
字节跳动青训营笔试题解(代码片段)
...码T2.社交圈题目思路代码四、简答题题目思路前言第五届字节跳动青训营-后端专场笔试题解,简单做了一下,选择题和简答题不知道是否正确,编程题是通过了的,有问题欢迎评论,我会及时改正的~一、单选... 查看详情
字节跳动青训营笔试题解(代码片段)
...码T2.社交圈题目思路代码四、简答题题目思路前言第五届字节跳动青训营-后端专场笔试题解,简单做了一下,选择题和简答题不知道是否正确,编程题是通过了的,有问题欢迎评论,我会及时改正的~一、单选... 查看详情
字节跳动青训营笔试题解(代码片段)
...码T2.社交圈题目思路代码四、简答题题目思路前言第五届字节跳动青训营-后端专场笔试题解,简单做了一下,选择题和简答题不知道是否正确,编程题是通过了的,有问题欢迎评论,我会及时改正的~一、单选... 查看详情
第五届字节青训营笔试后端编程练习题解(代码片段)
文章目录前言T1.36进制加法(模拟)题面思路代码T2.电影院选座(DFS)题面思路代码T3.IP地址(DFS)题面思路代码前言前段时间🐏了,今天简单写了一下,不知道如何提交代码进行评测,题... 查看详情
字节跳动青训营--前端day8(代码片段)
文章目录前言一、CSR,SSR,SSG1.CSR2.SSR3.SSG4.SSR,SSG的优势利于SEO更短的首屏时间二、什么是Next.js三、Next.js客户端开发1.Api2.CSSModules3.Layout4.文件式路由四、Next.js服务端开发前言仅以此文章记录学习历程。一、CSR,SS... 查看详情
青训营html基础-语义化标签-浏览器渲染过程-笔记及拓展(代码片段)
...ff08;哈哈哈)博主还是很久之前学习的,这次趁着字节跳动青训营的活动,就再学习一遍HTML。一小时的课程,巩固了之前的一些知识,也学到了很多新知识。我把这次课程的内容与我这一年来学习前端的经验... 查看详情
青训营月影老师告诉我写好javascript的三大原则之——过程抽象(代码片段)
...明式5.总结过程抽象/HOF/装饰器命令式/声明式参加了这次字节青训营的活动,见到了传说中的月影老师 查看详情
青训营node.js基础-异步编程四种解决方案(代码片段)
文章目录异步编程概述异步编程解决方案CallbackPromiseCallback转为PromiseawaitEvent参考有异步I/O,必有异步编程!今天来学习Node.js里的异步编程!异步编程概述曾经的单线程模型在同步I/O的影响下,由于I/O调用缓慢ÿ... 查看详情
青训营node.js基础-异步编程四种解决方案(代码片段)
文章目录异步编程概述异步编程解决方案CallbackPromiseCallback转为PromiseawaitEvent参考有异步I/O,必有异步编程!今天来学习Node.js里的异步编程!异步编程概述曾经的单线程模型在同步I/O的影响下,由于I/O调用缓慢ÿ... 查看详情
第五届字节青训营笔试后端编程练习题解(代码片段)
文章目录前言T1.36进制加法(模拟)题面思路代码T2.电影院选座(DFS)题面思路代码T3.IP地址(DFS)题面思路代码前言前段时间🐏了,今天简单写了一下,不知道如何提交代码进行评测,题... 查看详情
结营啦!有缘相聚于青训,未来高处见呀~~(代码片段)
📸叮!记·字节跳动第一届青训营顺利结营啦!从8月份的青训营,到9月份的实训营,搁置了许久的结营心得终于拾起来辽!🎬开营进行时从答疑会开始,负责人仔细的阐述了本次训练营的性质和... 查看详情
❤️tiktok字节跳动编程题实战2022校招——吐血分享总结。(代码片段)
❤️TikTok字节跳动编程题实战2022校招——吐血分享总结。前言+说明一、算法编程题(种树)二、算法编程题(小A的吃鸡之旅)三、算法编程题(有序最大K位数)四、算法编程题(测试计划的最大... 查看详情
编程实践系列:字节跳动面试题
字节跳动面试题面试3轮技术面+1轮HR整体分三大块:项目经验计算机基础编程题(每轮一题)项目经验架构+业务做了什么核心设计优化解决了什么难题体现思考业务理解架构设计能力项目需求设计demo:如何... 查看详情
结营啦!有缘相聚于青训,未来高处见呀~~(代码片段)
📸叮!记·字节跳动第一届青训营顺利结营啦!从8月份的青训营,到9月份的实训营,搁置了许久的结营心得终于拾起来辽!🎬开营进行时从答疑会开始,负责人仔细的阐述了本次训练营的性质和... 查看详情
字节跳动2019春招研发部分编程题汇总
第一题我叫王大锤,是一家出版社的编辑。我负责校对投稿来的英文稿件,这份工作非常烦人,因为每天都要去修正无数的拼写错误。但是,优秀的人总能在平凡的工作中发现真理。我发现一个发现拼写错误的捷径: 1.三个... 查看详情
每日一练:排序题:一大一小,依次类推题
/*描述:有一组数(43,14,6,9,3,27,38,19,5等)排序:将最大的放在第一位,最小放在第二位,剩下的最大的放在第三位,最小的放在第四位,以此类推输出排序结果*/ packageeveryDay;importjava.util.Arrays;publicclassSortTest{ /** *实现思路:1.... 查看详情
字节跳动(今日头条)的题目真的难吗?
...都努力精进,并努力分享的主儿。今天给聊得话题是关于字节跳动笔试题难度的。在各种交流群了,总是能看到大家在说字节跳动的题目好难呀,4个编程题没有一个题AC。天天觉得大家好难呀,所以找了一些==字节跳动==关于自... 查看详情
go语言上手|青训营笔记(代码片段)
这是我参与「第三届青训营-后端场」笔记创作活动的的第一篇笔记。文章目录语法速览基础语法第一:类型第二:内置库部分json库的使用时间库的使用字符串和数字互转os相关信息实战项目猜谜游戏(pass,过于... 查看详情