1399 酗酒的狱警
时间限制: 1 s
空间限制: 1000 KB
题目等级 : 钻石 Diamond
题解
题目描述 Description
某监狱里有个很长的走廊,走廊中一个接一个的n个房间。每个房间中锁着一个犯人。一天夜里,狱警决定玩一个无聊游戏。第1轮中,他喝了一口威士忌,然后打开每个房间。第2轮,他喝了一口威士忌,然后按2的倍数遍历每个房间。第3轮,他又喝了一口威士忌,遍历所有3的倍数的房间,以此类推。在遍历中,如果房间是锁着的,则打开;否则锁上。他这样重复n轮,最终醉酒。这时囚犯看到自己房间的锁被打开了,他们立即逃跑。对于有n个房间的走廊,最终会有多少囚犯逃脱?
输入描述 Input Description
仅1行: 一个整数,房间数目n(5≤n≤1000000000)。
输出描述 Output Description
仅1行: 一个整数,逃脱的罪犯数量。
样例输入 Sample Input
100
样例输出 Sample Output
10
数据范围及提示 Data Size & Hint
找规律
思路:打表找规律 向下取整
#include<bits/stdc++.h>
using namespace std;
int main()
{
int n;
cin >> n;
cout << (int)sqrt(n);
return 0;
}