当前位置:网站首页>牛客刷题系列之初阶版(自守数,返回小于 N 的质数个数,第一个只出现一次的字符)
牛客刷题系列之初阶版(自守数,返回小于 N 的质数个数,第一个只出现一次的字符)
2022-07-22 23:39:00 【雪芙花】
很多小伙伴为了刷题发愁
今天为大家推荐一款刷题神奇哦:刷题面试神器牛客
各大互联网大厂面试真题。从基础到入阶乃至原理刨析类面试题 应有尽有,赶快来装备自己吧!助你面试稳操胜券,solo全场面试官
一:自守数
- 题目:(题目链接)

- 代码:
#include <iostream>
#include <string>
using namespace std;
bool isnot(int i)
{
if(i==0)
return true;
int a = i*i;
int sum= 0;
int j=1;
while(a!=0)
{
if(sum == i)
return true;
else
{
int tem =a%10;
for(int k=1;k<j;k++)
tem*=10;
j++;
sum+=tem;
a=a/10;
}
}
if(sum== i)
return true;
else
return false;
}
int main(){
int n;
cin>> n;
int count=0;
for(int i=0;i<=n;i++)
{
if(isnot(i))
count++;
}
cout<<count;
}
- 思路:
- 首先要明白自守数的定义:自守数是指一个数的平方的尾数等于该数自身的自然数。
- 计算:通过暴力枚举法依次计算
二:返回小于 N 的质数个数
1.题目
2.代码实现
#include <iostream>
#include <string>
#include<math.h>
using namespace std;
bool isnot(int a)
{
for(int i=2;i<=sqrt(a);i++)
{
if(a%i==0)
return false;
}
return true;
}
int main(){
int n;
cin>> n;
int count=0;
for(int i=2;i<=n;i++)
{
if(isnot(i))
count++;
}
cout<<count;
}
3.思路和要注意的细节

注意题目要求,所以我用的是 for(int i=2;i<=sqrt(a);i++) 这个循环来判断
三:第一个只出现一次的字符
1.题目
2.代码实现
class Solution {
public:
int FirstNotRepeatingChar(string str) {
map<char,int> m;
for(int i=0;i<str.size();i++)
{
m[str[i]]++;
}
for(int i=0;i<str.size();i++)
{
if(m[str[i]]==1)
{
return i;
}
}
return -1;
}
};
思路和注意的点
这个题,主要就是用了map的特性,关于map的特性,可以看下我另外一篇文章C++精通之路:map和set
ps
想和博主一样刷优质面试和算法题嘛,快来刷题面试神器牛客吧,期待与你在牛客相见
边栏推荐
- 测试面试题
- 医院PACS源码 PACS超声科室源码 DICOM影像工作站源码【源码免费分享】
- Node definition and traversal of binary tree~
- UE5分屏(小地图)的解决方案
- 5 minutes to achieve wechat applet drawing QR code
- What should Alibaba cloud international account do if it receives an account risk notification?
- SOLIDWORKS CAM数据无法恢复,因为已检测到经化零件。
- 一文读懂Elephant Swap的LaaS方案的优势之处
- Layout drawing of semi customized digital inverter
- Keras深度学习实战(15)——从零开始实现YOLO目标检测
猜你喜欢

什么是NFT?你不会还不知道吧!

Get a control width

Deep parsing Kube scheduler scheduling context

医院PACS源码 PACS超声科室源码 DICOM影像工作站源码【源码免费分享】

Textview shows endless content implementation -- full display, partial display

Okaleido tiger NFT即将登录Binance NFT平台,你期待吗?

MySQL 分库分表及其平滑扩容方案

30行自己写并发工具类(Semaphore, CyclicBarrier, CountDownLatch)是什么体验?

Qgraicsview implementation palette

浅谈——网络安全架构设计(四)
随机推荐
「疯狂食客」的元宇宙新布局「原始立方」,收藏价值几何?
构造函数的初始化、清理及const修饰成员函数
如何实现软件功能安全
Golang中iota的正确用法
小迪和小辉
全能链接(1) : 综合
Bufferedinputstream buffer fill problem
[arxiv2022] grouptransnet: Group transformer Network for RGB - D Salient Object Detection
Swift - 标红的修饰词
Arcgis js api二次开发——加载国家天地图
Go concurrent programming basics: what is context
What is NFT? You don't know yet!
工控人,你真的了解你的五险一金吗?
【小程序的 插值表达式,渲染判断,绑定事件以及分享】
二叉树遍历(DAY 74)
【OPENVX】对象基本使用之vx_reference
二叉树遍历
C#中使用async和await实现异步Udp通讯
吆喝一声就解决了
做对的事情,把事情做对

