题目列表
- C - Are They All Integers?
- D - Tapioka
- E - The League of Sequence Designers
- H - Mining a
- J - Automatic Control Machine
- K - Length of Bundle Rope
practice link:https://vjudge.net/contest/392746#overview
C - Are They All Integers?
思路:直接按题意模拟暴力即可。
代码:
‘’‘’‘’
int a[55];
int main()
{
int n;
scanf("%d",&n);
for(int i=1;i<=n;i++){
scanf("%d",&a[i]);
}
int kk=1;
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
for(int k=1;k<=n;k++){
if(i!=j&&i!=k&&j!=k){
if((a[i]-a[j])%a[k]!=0){
kk=0;
printf("no\n");
return 0;
}
}
}
}
}
printf("yes");
return 0;
}
D - Tapioka
签到题。
代码:
‘’‘’‘’
int main()
{
char s[33];
bool flag = 0;
while(~scanf("%s",s))
{
if(strcmp(s,"bubble")!=0&&strcmp(s,"tapioka")!=0)
{
printf("%s ",s);
flag = 1;
}
}
if(!flag) printf("nothing\n");
}
E - The League of Sequence Designers
题意:构造题。求
其中,n<2000 ,题目中给你一个伪代码,但其中有错误。给你 k 和 L ,让你构造出一组数据,其中长度n>=L , 且伪代码的答案与正确答案相差k。
思路:首先n>=L ,所以当L>1999时,答案为 -1 。观察伪代码,可以看到当a[i]是负数是,该代码就会不计这一位,因此我们可以让 a[1]=-1,然后我们构造一个长度为1999的数组,见图:
代码:
‘’‘’‘’
int main()
{
int T,k,l;
cin>>T;
while(T--){
scanf("%d %d",&k,&l);
if(l>1999){
printf("-1");
}else{
printf("1999\n");
printf("-1");
int cnt=(k+1999)%1998;
int num=(k+1999)/1998;
for(int i=2;i<1999;i++){
printf(" %d",num);
}
printf(" %d\n",num+cnt);
}
}
return 0;
}
H - Mining a
思路1:队友的暴力枚举
代码1:
‘’‘’‘’
int main()
{
int T;
scanf("%d",&T);
while(T--)
{
ll n;
scanf("%lld",&n);
ll maxn = 0;
for(ll i=2*n-1;i>n;i--)
{
if((n*i)%(i-n)==0)
{
maxn = max(maxn,i^(n*i/(i-n)));
}
}
printf("%lld\n",maxn);
}
}
思路2:猜结论:\(_