zoukankan      html  css  js  c++  java
  • 学校举行的ACM,有道题没弄明白!!

    最近,小南同学在学习进制转换问题,包括二进制、十进制、十六进制等。也许是他白天学的太认真了,晚上他竟然做了一个奇怪的梦,梦到自己来到了宇宙中一个未知的美丽星球上,星球上的人看见他很奇怪,于是和他对话,但是小南听不懂他们说什么,于此同时星球上的人在地上写了一行奇怪的字符,有大写字母、小写字母还有数字。这些符号小南都认识,他仔细研究后发现不是二进制、十进制也不是十六进制,好像他们用的是62进制,字符0,1,……,9,A,B,……,Z,a,b,……,z代表0-61(10进制)
    我们假定星球人给小南同学一个62进制数x,而你的任务就是判断x能不能被61(10进制)整除,现在需要聪明的你的帮助,你能否帮助小南同学解决这个问题,要是解决不了小南同学就回不来了。

    我首先想到的是map[]映射,但是同学用下面的题吗提交通过了,他计算的方式是将62进制的各个位相加然后计算和,我感觉怎么不符合题意呢!

    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>

    int main()
    {
        int x, i;
        char s[10001];
        while (scanf("%s",s))
        {
            if (strcmp(s, "end") == 0)
                return 0;
            for (x = 0, i = 0; s[i] != '\0'; i++)
            {
                if (s[i] >= '0' && s[i] <= '9')
                    x += s[i] - '0';
                else if (s[i] >= 'A' && s[i] <= 'Z')
                    x += s[i] - 'A' + 10;
                else if (s[i] >= 'a' && s[i] <= 'z')
                    x += s[i] - 'a' + 36;
            }

            if (x % 61)
                printf("no\n");
            else
                printf("yes\n");
        }
        return 0;
    }

  • 相关阅读:
    几个新角色:数据科学家、数据分析师、数据(算法)工程师
    人类投资经理再也无法击败电脑的时代终将到来了...
    Action Results in Web API 2
    Multiple actions were found that match the request in Web Api
    Routing in ASP.NET Web API
    how to create an asp.net web api project in visual studio 2017
    网站漏洞扫描工具
    How does asp.net web api work?
    asp.net web api history and how does it work?
    What is the difference between a web API and a web service?
  • 原文地址:https://www.cnblogs.com/javawebsoa/p/3073184.html
Copyright © 2011-2022 走看看