2024.1.4大一上学期ACM团队定位赛总结

OMeGa 兄弟最近赢了巨奖!但当他们在分彩票奖金的时候却遇到了一些问题。他们两兄弟对一切偶数都痴迷不已,以至于在分奖金的时候,他们两个都希望自己分到的钱是偶数(即便两人分的钱不一样也没关系)。现在我们知道他们的奖金总共是 N   块钱,那么是否存在一种分钱的方案来满足两人的需求?当然,他们各自拿到的钱肯定是要大于 0 的。

输入描述

输入的第一行是测试数据的组数 T (T ≤ 50)。

每组测试数据仅包含一个整数 N (1 ≤ N ≤ 108)。

输出描述

对于每组测试数据,如果这个需求可以被满足的话就输出Yes,否则输出No。

样例输入

2
5
10

样例输出

No
Yes
#include<stdio.h>
int main()
{
    int t;
    scanf("%d",&t);
    while(t--)
    {
        int n;
        scanf("%d",&n);
        if(n>=4&&n%2==0){
            printf("Yes\n");
        }
        else{
            printf("No\n");
        }
    }
    return 0;
}

题目描述

有一只小蜗牛,下雨了被冲到井底,它努力地想要爬出来,已知蜗牛每天能往上爬U米,但是第二天它需要休息一天,并且在休息的时候下滑D米,不考虑其他因素(天不会再下雨),它想知道最早需要多少天能爬到井外,你能帮帮它吗?

输入描述

有多组输入数据,每组数据输入三个整形 N,U,D,N为井深,U为蜗牛一天能往上爬的距离,D为一天蜗牛向下滑落的距离,最后以 0 0 0结束。(保证U>D)

输出描述

对每组测试数据,输出一个数,表示蜗牛最少需要多少天能爬出井外。

样例输入

7 5 3
10 2 1
0 0 0

样例输出

3
17

提示

蜗牛能够爬出井外的那天必是奇数哦~

#include<stdio.h>
int main()
{
    int n,u,d;
    while(scanf("%d%d%d",&n,&u,&d)!=EOF){
        if(n==0&&u==0&&d==0){
            break;
        }
        int s=0;
        int day=0;
        for(day=1; ;day++){
            s+=u;
            if(s>=n){
                break;
            }
            day++;
            s=s-d;
        }
        printf("%d\n",day);
    }

    return 0;
}

题目描述

存储单元一般应具有存储数据和读写数据的功能,以8位二进制作为一个存储单元,也就是一个字节。每个单元有一个地址,是一个整数编码,可以表示为二进制整数。程序中的变量和主存储器的存储单元相对应。变量的名字对应着存储单元的地址,变量内容对应着单元所存储的数据。存储地址一般用十六进制数表示,而每一个存储器地址中又存放着一组二进制(或十六进制)表示的数,通常称为该地址的内容。  


 

现在给你一个变量的十进制地址,请你输出他的2进制表示方法

输入描述

多组输入,每行一个整数n, 表示变量的十进制地址 (  0<=n<=2147483647)

输出描述

每行输出该变量的2进制地址, 总长度32位, 不足的位数使用数字0填充, 每8位使用空格分隔,具体看样例输出

样例输入

5
10
2200
4396

样例输出

00000000 00000000 00000000 00000101
00000000 00000000 00000000 00001010
00000000 00000000 00001000 10011000
00000000 00000000 00010001 00101100

提示

多组输入, 输出的最后没有空格

#include<stdio.h>
int main()
{
    int n;
    while(scanf("%d",&n)!=EOF)
    {
        char ch[35]={0};
        ch[8]=' ',ch[17]=' ',ch[26]=' ';
        for(int i=34;i>=0;i--){
            if(i==26||i==17||i==8){
                i--;
            }
            if(n%2==0){
                ch[i]='0';
            }
            else{
                ch[i]='1';
            }
            n/=2;
        }
        for(int i=0;i<35;i++){
            printf("%c",ch[i]);
        }
        printf("\n");
    }
    return 0;
}

  • 30
    点赞
  • 39
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值