結果

問題 No.1200 お菓子配り-3
ユーザー ytqm3
提出日時 2021-05-23 16:45:36
言語 C++17
(gcc 13.3.0 + boost 1.87.0)
結果
AC  
実行時間 731 ms / 4,000 ms
コード長 1,531 bytes
コンパイル時間 2,083 ms
コンパイル使用メモリ 195,668 KB
最終ジャッジ日時 2025-01-21 17:46:20
ジャッジサーバーID
(参考情報)
judge5 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 2
other AC * 31
権限があれば一括ダウンロードができます

ソースコード

diff #
プレゼンテーションモードにする

#include<bits/stdc++.h>
typedef int64_t i64;
typedef long double f128;
using namespace std;
template<typename T>
void scan(T& n)
{
cin>>n;
return;
}
void scan()
{
return;
}
template<typename T,class... Args>
void scan(T& n,Args&... args)
{
scan(n);
scan(args...);
return;
}
template<typename T>
void scan_array(T start,T end)
{
T now=start;
for(;now!=end;++now)
{
scan(*now);
}
return;
}
template<typename T>
void print(T n)
{
cout<<n;
return;
}
template<typename T>
void println(T n)
{
print(n);
print('\n');
return;
}
template<typename T,class... Args>
void println(T n,Args... args)
{
print(n);
print(' ');
println(args...);
return;
}
template<typename T>
void print_array(T start,T end)
{
T now=start;
print(*now);
++now;
for(;now!=end;++now)
{
print(' ');
print(*now);
}
print('\n');
return;
}
vector<int> div_enum(int n)
{
vector<int> res;
for(int i=1;i*i<=n;++i)
{
if(n%i==0)
{
res.push_back(i);
if(i*i!=n)
{
res.push_back(n/i);
}
}
}
return res;
}
void solve()
{
int X,Y;
scan(X,Y);
if(X==Y)
{
println(X-2+X%2+div_enum(X).size()-1);
return;
}
if(X>Y)
{
swap(X,Y);
}
vector<int> vec=div_enum(Y-X);
int ans=0;
for(size_t i=0;i<vec.size();++i)
{
int A=vec[i]+1,n=(Y-X)/vec[i];
if((X-n)%(A+1)==0&&X>n)
{
ans+=1;
}
}
println(ans);
return;
}
int main()
{
int S;
scan(S);
for(int i=0;i<S;++i)
{
solve();
}
return 0;
}
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
0