Районная олимпиада 2019-2020 информатика
Задача D. Бөлгіштер
Ограничение по времени:
1 second
Ограничение по памяти:
256 megabytes
Сізге $n$ бүтін саны берілген. $1$-ден $n$-ге дейін бөлгіштердің саны жұп болатын сандардың санын табыңыз.
Формат входного файла
Бірінші жолда бүтін $n$ $(1 <= n <= 10^9)$ саны берілген.
Формат выходного файла
Есептің жауабын шығарыңыз.
Система оценки
Бұл есеп $10$ тесттан тұрады. Әр тест $10$ баллға бағаланады:
- $1 <= n <= 1000$. 1-6 нөмердегі тесттер.
- $1 <= n <= 10^5$. 7-8 нөмердегі тесттер.
- $1 <= n <= 10^9$. 9-10 нөмердегі тесттер
Пример:
Вход 10Ответ
7
Замечание
Мысалды:
- $1$ санының бөлгіштері: $1$. Бөлгіштерінің саны $1$ - тақ.
- $2$ санының бөлгіштері: $1, 2$. Бөлгіштерінің саны $2$ - жұп.
- $3$ санының бөлгіштері: $1, 3$. Бөлгіштерінің саны $2$ - жұп.
- $4$ санының бөлгіштері: $1, 2, 4$. Бөлгіштерінің саны $3$ - тақ.
- $5$ санының бөлгіштері: $1, 5$. Бөлгіштерінің саны $2$ - жұп.
- $6$ санының бөлгіштері: $1, 2, 3, 6$. Бөлгіштерінің саны $4$ - жұп.
- $7$ санының бөлгіштері: $1, 7$. Бөлгіштерінің саны $2$ - жұп.
- $8$ санының бөлгіштері: $1, 2, 4, 8$. Бөлгіштерінің саны $4$ - жұп.
- $9$ санының бөлгіштері: $1, 3, 9$. Бөлгіштерінің саны $3$ - тақ.
- $10$ санының бөлгіштері: $1, 2, 5, 10$. Бөлгіштерінің саны $4$ - жұп.
Комментарий/решение:
#include<iostream>
#include<cmath>
using namespace std;
int main(){
long long int a,b;
cin>>a;
b=sqrt(a);
cout<<a-b;
}
#pragma GCC optimize("03")
#pragma GCC optimize("unroll-loops")
#include <bits/stdc++.h>
#define ll long long
#define pb push_back
#define mp make_pair
#define endl "\n"
#define speed ios_base::sync_with_stdio(false); cin.tie(0); cout.tie(0);
#define rt return
#define sp " "
#define S second
#define F first
#define gcd(a, b) __gcd((a),(b))
#define lcm(a, b) ((a)*(b))/__gcd((a),(b))
const int inf = 1e5;
const int mod = 1000000007;
using namespace std;
int main()
{
int n;
cin>>n;
int nn = sqrt (n);
cout<<n-nn;
}
Возможно, что при неправильном наборе формул, они будут
доредактированы модератором. При этом содержание не будет меняться.