【华为】删数
来源:互联网 发布:js div display none 编辑:程序博客网 时间:2024/06/10 11:55
题目描述
有一个数组a[N]顺序存放0~N-1,要求每隔两个数删掉一个数,到末尾时循环至开头继续进行,求最后一个被删掉的数的原始下标位置。以8个数(N=7)为例:{0,1,2,3,4,5,6,7},0->1->2(删除)->3->4->5(删除)->6->7->0(删除),如此循环直到最后一个数被删除。
输入描述:
每组数据为一行一个整数n(小于等于1000),为数组成员数,如果大于1000,则对a[999]进行计算。
输出描述:
一行输出最后一个被删掉的数的原始下标位置。
示例1
输入
8
输出
6
分析:
数组是不断缩小的,所以就是vector的运用。也看到很多人用python写的。。。
code:
#include <iostream>#include <stdio.h>#include <string.h>#include <string>#include <vector>using namespace std;int main(){ int n; while(scanf("%d",&n)!=EOF){ int i; if(n>1000) n=1000; vector<int> vec; for(i=0;i<n;i++) vec.push_back(i); int ans=0; while(vec.size()>1){ ans=(ans+2)%vec.size(); vec.erase(vec.begin()+ans); } cout<<vec[0]<<endl; } return 0;}
阅读全文
0 0
- 华为 删数
- 【华为】删数
- 华为机试--删数
- 华为机试---删数
- 牛客网---2016---华为删数
- 华为笔试———删数
- 华为机考笔试题-删数
- 【华为oj】自守数
- 【华为 OJ 】自守数
- 【华为OJ】自守数
- 【华为】数独
- 华为,数独
- 华为-删数-约瑟夫环问题-不利用额外空间
- 华为2016研发工程师编程题(1)----删数
- 删数--约瑟夫环-- 华为2016研发工程师编程题
- (华为笔试)删数 约瑟夫环问题
- 华为2016研发工程师编程题---删数
- 华为上机测试-删数-循环链表解决
- babel从入门到入门
- Linux命令学习
- JVM源码分析之javaagent原理完全解读
- Pingback漏洞利用技术
- 在 centos上安装ceph与openstack集成
- 【华为】删数
- 数据结构——B-tree(多路搜索树)
- 周星驰,你别这么贬低自己好嘛,你已经很努力了!
- 关系型数据库 vs 非关系型数据库
- C语言中不可告人的(i++)+(i++)+(i++)!!!你发现了吗?
- 北京Cloudera Apache Hadoop 管理员培训9月开班
- Java环境配置
- U盘安装ubuntu 16.04遇到gfxboot.c32
- Android键盘面板冲突 布局闪动处理方案