2016华为春招机试
2016-03-25 13:39
274 查看
三道编程题,第一道是输出连续字符串连续重复 的字符和它的个数。
第二道:求两个大数相除的余数
考试的时候只想到了两个数相减,导致提交结果一直是时间超出限制。回来后重新思考了一下,写了个新程序,同时把求商的算法也写了一下,编译通过,但不知道能不能在华为测试系统通过。
#include "stdafx.h"
#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
char s[1000],result[1000];
int main()
{
long long mod,divis;
int n,i,k,flag,len;
char c;
while(cin>>s>>c>>n) //输入被除数 s,符号 c ( '/' or ''% ),以及除数n
{
len=strlen(s);
if(c=='%')
{
mod=0;
for(i=0; i<len; i++)
{
mod=mod*10+s[i]-'0';
mod=mod%n;
//cout<<mod<<endl; //利用除法性质,其实质是每次都是一个最多比n多一位的mod对n进行求余
}
cout<<mod<<endl;
}
else
{
divis=flag=0;
for(i=k=0; i<len; i++)
{
divis=divis*10+s[i]-'0';
if(divis>=n){
result[k++]=divis/n+'0';
divis=divis%n;
}
}
if(!k) result[k++]='0';
result[k]='\0';
cout<<result<<endl;
}
}
return 0;
}
第三道:求多边形的点。
当时没来得急做,连题目也不太记得,下次补上。
第二道:求两个大数相除的余数
考试的时候只想到了两个数相减,导致提交结果一直是时间超出限制。回来后重新思考了一下,写了个新程序,同时把求商的算法也写了一下,编译通过,但不知道能不能在华为测试系统通过。
#include "stdafx.h"
#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
char s[1000],result[1000];
int main()
{
long long mod,divis;
int n,i,k,flag,len;
char c;
while(cin>>s>>c>>n) //输入被除数 s,符号 c ( '/' or ''% ),以及除数n
{
len=strlen(s);
if(c=='%')
{
mod=0;
for(i=0; i<len; i++)
{
mod=mod*10+s[i]-'0';
mod=mod%n;
//cout<<mod<<endl; //利用除法性质,其实质是每次都是一个最多比n多一位的mod对n进行求余
}
cout<<mod<<endl;
}
else
{
divis=flag=0;
for(i=k=0; i<len; i++)
{
divis=divis*10+s[i]-'0';
if(divis>=n){
result[k++]=divis/n+'0';
divis=divis%n;
}
}
if(!k) result[k++]='0';
result[k]='\0';
cout<<result<<endl;
}
}
return 0;
}
第三道:求多边形的点。
当时没来得急做,连题目也不太记得,下次补上。
相关文章推荐
- BZOJ_P1666 [Usaco2006 Oct]Another Cow Number Game 奶牛的数字游戏(hhhhhh)
- Initialization error Oracle Client not properly installed
- 来段代码提提神-Java实现图片压缩方法 一
- Sublime Text 离线安装插件的方法
- AndroidStudio导入项目一直卡在Building gradle project info最快速解决方案
- WCF配置文件详解(一)
- 问问自己
- Dubbo基础篇_05_在Linux操作系统上手工部署Dubbo服务
- C++字符串转数字,数字转字符串
- Android Studio的使用方法
- 移动开发,背景图片的处理问题
- 初学nodejs
- java事务学习笔记(二)--失败案例
- Android技术积累:开发规范
- HDU 1009 FatMouse' Trade (模拟)
- Oracle ref cursor使用
- 关于Python中的*args和**kwargs
- HTML 5 Web 存储
- Linux学习
- UIView的生命周期总结