nowcoder 90 K 密码

NowCoder刷题 SQL篇 NowCoder Quiz SQL Chapter 阅读详情

题目链接

题目描述

ZiZi登录各种账号的时候,总是会忘记密码,所以他把密码都记录在一个记事本上。其中第一个密码就是牛客网的密码。

牛客网专注于程序员的学习、成长及职位发展,连接C端程序员及B端招聘方,通过IT笔试面试题库、在线社区、在线课程等提高候选人的求职效率,通过在线笔试、面试及其他工具提升企业的招聘效率。

团队由来自Google、百度、阿里、网易等知名互联网巨头的热血技术青年组成,用户覆盖全国2000多所高校的100W求职程序员及全部一线互联网企业,并仍在高速增长中。
谨慎的ZiZi当然不会直接把密码记录在上面,而是把上面的字符串经过转化后才是真正的密码。转化的规则是把字符串以n行锯齿形写出来,然后再按从左到右,从上到下读取,

即为真正的密码。如ABABCADCE以3行写出:
example
所以真正的密码是ACEBBACAD。但是每一次都要写出来就太麻烦了,您如果能帮他写出一个转换程序,他就送你一个气球。

输入描述:

第一行一个整数T,表示数据组数
对于每组数据,首先一个正整数n(n<=100,000),然后下一行为一个字符串,字符串长度len<=100,000。

输出描述:

对于每组数据,输出一个字符串,代表真正的密码。

示例1
输入

1
3
ABABCADCE

输出

ACEBBACAD


#include<stdio.h>
char str[100005];
int main() {
    int kase,n,len;
    scanf("%d", &kase);
    for (int t = 0; t < kase; ++t) {
        scanf("%d",&n);
        scanf("%c", &str[100001]);//把一个多余的回车过滤掉
        for (len = 0;; len++) {
            scanf("%c", &str[len]);
            if (str[len] == '\n') {
                str[len] = '\0'; break;
            }
        }
        if (n == 1) { printf("%s\n", str); continue; }
        for (int h = 0; h < n; ++h) {
            if (0 < h && h < n - 1) {
                for (int t = h; t< len; t=t+2*n-2) {
                    printf("%c", str[t]);
                    if (t + 2 * (n - h) - 2 < len)
                        printf("%c", str[t + 2 * (n - h) - 2]);
                }
            }
            else if(h==0||h==n-1){
                for (int t = h; t < len; t = t + 2 * n - 2) {
                    printf("%c", str[t]);
                }
            }
        }printf("\n");
    }
}

这道题,n是100,000,len也是100,000,那么显然不能开一个10,000,000,000的数组把“锯齿”存放下来。那干脆直接按格式输出吧。
假如n是4

行号t\列号i012345678910
0061218
1157111317
2248101416
33915


因为每增加一行,每个“锯齿”都要增加两个数,所以“锯齿”的底部间隔为2* (n-1);放在第一行的字符的编号一定是0, 2n-2, 4n-4, 6n-6, … 。同理第二行也要输出1, 2n-1, 4n-3, 6n-5, …,但与第一行不同的是,第二行每个“锯齿”要多输出一个字符,观察发现由于是锯齿,所以总是和左边的相差2*(n-2),最终输出为1, 2n-3, 2n-1, 4n-5, 4n-3, 6n-7, …。同理,第2~n行都符合这个规律。

代码丑陋,见谅_(:з」∠)_

#include<stdio.h>
char str[100005];
int main() {
    int kase,n,len;
    scanf("%d", &kase);
    for (int t = 0; t < kase; ++t) {
        scanf("%d",&n);
        scanf("%c", &str[100001]);//过滤多余回车
        for (len = 0;; len++) {
            scanf("%c", &str[len]);
            if (str[len] == '\n') {
                str[len] = '\0'; break;
            }
        }
        if (n == 1)  //特判1行的情况
        { printf("%s\n", str); continue; }
        for (int h = 0; h < n; ++h) {//从第一行开始
            if (0 < h && h < n - 1) {//中间几行的输出
                for (int t = h; t< len; t=t+2*n-2) {
                    printf("%c", str[t]);
                    if (t + 2 * (n - h) - 2 < len)
                        printf("%c", str[t + 2 * (n - h) - 2]);
                }
            }
            else if(h==0||h==n-1){//第一行和最后一行
                for (int t = h; t < len; t = t + 2 * n - 2) {
                    printf("%c", str[t]);
                }
            }
        }printf("\n");
    }
}
密码学题目资料汇总 立即下载

相关推荐

2006NOIP普及组真题 4. 数列

从上述推理中,我们发现要输出的幂次和中的第 N 项(也就是幂次和中的序号N),对应的二进制位数和幂次和对应的二进制位数相同。当 k=3 时,k的幂次为1, 3, 9, 27, 81…,即第0位,第2位均为1,转成 k 进制(k=3)时。,即第2位,第3位均为1,转成 k 进制(k=3)时。转成 k 进制(k=3)时的幂次和为。,即第0位,第1位,第2位均为1,(即第0位,第1位,第2位均为1)N=12时,12的二进制是。(即第0位,第2位均为1)(即第2位,第3位均为1)结论:这道题就变成了。

weixin_40252159的博客 1514

K_密码(暴力)

题目描述 ZiZi登录各种账号的时候,总是会忘记密码,所以他把密码都记录在一个记事本上。其中第一个密码就是牛客网的密码。 牛客网专注于程序员的学习、成长及职位发展,连接C端程序员及B端招聘方,通过IT笔试面试题库、在线社区、在线课程等提高候选人的求职效率,通过在线笔试、面试及其他工具提升企业的招聘效率。 团队由来自Google、百度、阿里、网易等知名互联网巨头的热血技术青...

小小俊 1574

【SEED Labs 2.0】V*N Tunneling Lab

本文为 SEED Labs 2.0 - V*N Tunneling Lab 的实验记录。本实验工作量较大,但难度不大,重点在于搞清是谁发给谁,走的什么路径。另外,本次实验由于网络中的设备较多,修改了环境变量方便分清哪个窗口是哪个设备。这样操作起来就方便多了。...

Chenyang的博客 6975

探秘Nowcoder:一站式编程实践平台

探秘Nowcoder:一站式编程实践平台 项目简介 是一个开源的在线编程实践平台,它提供了一个完整的环境,让用户可以在浏览器中编写、运行和测试代码。无论是初学者希望提升编程技能,还是专业开发者需要进行快速原型验证或面试准备,Nowcoder都是一个理想的选择。 技术分析 Nowcoder 的核心技术包括: Web IDE - 基于HTML5的Web端集成开发环境,支持多种编程语言,提供了类似于本...

gitblog_00048的博客 1113

单目视觉定位:深入解析PNP算法在机器人导航中的实战应用

本文深入解析了PNP算法在机器人单目视觉定位中的核心原理与实战应用。通过拆解坐标变换四步,详细阐述了如何从二维图像点反求相机三维位姿。文章结合OpenCV的solvePnP函数,提供了算法选择、参数调优及结果后处理的实用指南,并针对机器人导航中的特征匹配、尺度不确定性等挑战,给出了鲁棒性优化与实时性平衡的解决方案。

weixin_29083649的博客 419

保姆级教程:用MS建完分子模型,如何一键转成LAMMPS能用的data文件?

本文详细介绍了如何将Materials Studio(MS)构建的分子模型转换为LAMMPS可用的data文件的全流程。重点讲解了力场选择、环境配置、转换命令参数解析及常见问题排查,帮助初学者快速掌握MS与LAMMPS之间的数据转换技巧,特别适合计算材料学领域的研究人员。

weixin_42665255的博客 471

Nowcoder专项练习:Linux(四)

Nowcoder Linux专项练习第四弹。

不积跬步无以至千里 977

反激电源反馈环路设计:从TL431+PC817原理到动态补偿实战

本文深入解析了反激电源中由TL431和PC817构成的经典反馈环路设计。从静态工作点计算到动态补偿实战,详细阐述了如何通过Type II补偿网络优化环路稳定性与动态响应,并分享了应对光耦CTR离散性、布局噪声等常见调试难题的实用技巧,帮助工程师设计出高性能、高可靠的开关电源。

moon9的博客 699

Nowcoder .链表分割

使用哨兵位头节点处理链表分割

qq_2972806103的博客 629

Ubuntu新手必看:3种方法快速查看和编辑JSON文件(附jq安装指南)

本文为Ubuntu新手详细介绍了三种查看和编辑JSON文件的核心方法:命令行利器jq、灵活脚本Python以及直观的图形化编辑器(如VS Code)。文章重点解析了jq的安装与核心用法,并对比了各方案的优缺点,帮助用户根据快速查询、复杂处理或直观编辑等不同场景,选择最合适的工具,从而高效处理JSON数据。

weixin_29229989的博客 416

2023华为OD面试手撕真题【最长公共前缀】

2023华为OD面试手撕真题【最长公共前缀】

MISAYAONE的博客 5239

【NOWCODER】- Python:内置函数(三)

【NOWCODER】- Python:内置函数(三)

啊Q老师 1347

工业4.0必备:C#上位机+数字孪生 生产线实时监控与智能预警系统(工业级实战)

数据割裂:PLC、传感器、工业相机的数据散落在不同系统,想看全局生产状态要切换N个软件,“数据孤岛”导致决策滞后;故障难预判:设备突发故障时,只能停机排查,平均故障响应时间超30分钟,一条生产线停工1小时损失超10万;可视化差:传统监控只有冰冷的数字和2D图表,设备运行状态、生产流程、物料流转无法直观感知,新人上手需3个月才能熟悉产线。

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 659

第13届景驰-埃森哲杯广东工业大学ACM程序设计大赛 K 密码(模拟)

题目描述 ZiZi登录各种账号的时候,总是会忘记密码,所以他把密码都记录在一个记事本上。其中第一个密码就是牛客网的密码。 牛客网专注于程序员的学习、成长及职位发展,连接C端程序员及B端招聘方,通过IT笔试面试题库、在线社区、在线课程等提高候选人的求职效率,通过在线笔试、面试及其他工具提升企业的招聘效率。 团队由来自Google、百度、阿里、网易等知名互联网巨头的热血技术青年...

riba2534的博客 420

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

第十七届蓝桥杯国赛C++ B组 个人题解+考场思路复盘及备赛经验

蓝桥杯国赛个人题解+考场思路复盘及备赛经验

2401_87563614的博客 754

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

【NOWCODER】- Python:列表(二)

【NOWCODER】- Python:列表(二)

啊Q老师 1755

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

生成函数【Nowcoder】

生成函数及指数生成函数

qq_51968155的博客 672

nowcoder 左神算法1

归并排序 归并排序的核心思想是先让序列的左半部分有序、再让序列的右半部分有序,最后从两个子序列(左右两半)从头开始逐次比较,往辅助序列中填较小的数。 以序列{2,1,4,3}为例,归并排序的过程大致如下: 算法代码示例: 复制代码 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

byteyoung 1212

贪心算法-nowcoder

贪心算法

Hakuna___Matata的博客 338

Nowcoder(概率统计)基本理论

以下两种描述分别对应哪两种分类算法的评价标准? a) 描述有多少比例的小偷被警察抓了的标准 b) 警察抓小偷,描述警察抓的人中有多少个是小偷的标准 True Positive Rate(TPR), False Positive Rate(FPR) True Positive Rate(TPR), True Negative Rate(FRP) Precision, Recall Recall, P...

the_harder_to_love的博客 894

Nowcoder—链表的回文结构

1.回文结构是指一个序列或字符串从前往后读或从后往前读都是相同的。2.时间复杂度为O(n),说明循环只能有一层;空间复杂度为O(1),说明不能额外的申请空间。3.链表的结点最多不会超过900个。思路1: 创建新的数组,遍历原链表,将链表结点中的值放入数组,在数组中判断链表是否为回文结构。创建新的数组,遍历原链表,将链表结点中的值放入数组定义两个指针left和right,left从前往后遍历,right从后往前遍历,比较left和right的值是否相等,当left<right的时候,如果left的值不等于r

2301_80151359的博客 1099

【每日训练】组队竞赛&&删除公共字符

组队竞赛&&删除公共字符C++牛客网训练

QiHai的博客 613

nowcoder shell练习 1-10

【代码】nowcoder shell练习 1-10。

qq_32258499的博客 212

【nowcoder】笔试强训Day10

十道选择题和两道编程题-井字棋和密码强度等级

m0_50987960的博客 780

LeetCode/NowCoder-二叉树OJ练习

数据结构的学习离不开刷题,题刷的够多才能有题感,才能有把握,这个系列专门更新数据结构相关的习题、面试题,欢迎大家来学习~ ​​

Become Mad的博客 1645

【nowcoder】笔试强训Day1

10道选择题以及2道编程题-组队竞赛和删除公共字符串

m0_50987960的博客 900
上一篇: nowcoder 90 E-回旋星空
下一篇: 2018 CCCC天梯赛 L2 04 秀恩爱分得快
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值