• LQDOJ
  • Trang chủ
  • Bài tập
  • Bài nộp
  • Thành viên
  • Kỳ thi
  • Nhóm
  • Giới thiệu
    • Máy chấm
    • Khóa học
    • Đề xuất ý tưởng
    • Đề xuất bài tập
    • Tools
    • Báo cáo tiêu cực
    • Báo cáo lỗi

Tiếng Việt

Tiếng Việt
English

Đăng nhập

Đăng ký

munahida

  • Giới thiệu
  • Bài tập
  • Bài nộp

Rating
-
Bài tập
334
Điểm
21929
Rating #
-
Điểm #
2053

Giới thiệu

include<bits/stdc++.h>>

define N 1123456

using namespace std;
long long i,j,k,n,t,x,m,a[N];
int bs(long long arr[],int n,long long x)
{
int d,c,g,ans=-1;
d=1;
c=n;
while(d<=c)
{
g=(d+c)/2;
if(a[g]==x)
return g;
if(a[g]>x)
{
ans=g;
c=g-1;
}
else
d=g+1;
}
return ans;
}
int main()
{
ios_base::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
// freopen("a.inp","r",stdin);
//freopen("a.out","w",stdout);
cin>>n;
for(i=1; i<=n; i++)
a[i]=i*i+1;
cin>>t;
for(i=1; i<=t; i++)
{
cin>>x;
m=bs(a,n,x);
cout<<a[m]<<'\n';
}
}
//cach2:
//for(i=1;i<=t;i++)
//{
// cin>>x;
// m=lower_bound(a+1,a+1+n,x)-a;
// cout<<a[m]<<'\n';
//}
//}
//// cach 3:
//for(i=1;i<=t;i++)
//{
// cin>>x;
// m=upper_bound(a+1,a+1+n,x)-a;
// if(a[m-1]==x)
// m--;
// cout<<a[m]<<'\n';
//}
//}


«    »
Thứ 2
Thứ 3
Thứ 4
Thứ 5
Thứ 6
Thứ 7
CN
Ít
Nhiều

proudly powered by DMOJ| developed by LQDJudge team