ACM学习之路————一个大整数与一个小整数不得不说得的秘密

这个相对于两个大整数的运算来说,只能说是,low爆了。

只要利用好除法的性质,这类题便迎刃而解。O(∩_∩)O哈哈~

//大整数除一个int数
#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
char s[1000],result[1000];
int main()
{
    long long divis;
    int  n,i,k,flag,len;
    char c;
    while( cin >> s >> n )
    {
        len=strlen(s);

        divis=flag=0;
        for(i=k=0; i<len; i++)
        {
            divis=divis*10+s[i]-‘0‘;
            if(divis>=n&&!flag)
            {
                result[k++]=divis/n+‘0‘;
                divis=divis%n;
                flag=1;
            }
            else if(flag)
            {
                result[k++]=divis/n+‘0‘;
                divis=divis%n;
            }
        }
        if(!k) result[k++]=‘0‘;
        result[k]=‘\0‘;
        cout<<result<<endl;
    }
    return 0;
}

接着是大整数对小整数的求余,但由于过于简单,加点限制。嘿嘿!看题

Problem Description

F(x,m)F(x, m)F(x,m) 代表一个全是由数字xxx组成的mmm位数字。请计算,以下式子是否成立:

F(x,m) mod k ≡ c。

Input

第一行一个整数TTT,表示TTT组数据。 每组测试数据占一行,包含四个数字x,m,k,cx,m,k,cx,m,k,c

1≤x≤9    1 ≤ m ≤ 10的十次方

?10?0≤c<k≤10,000

Output

对于每组数据,输出两行: 第一行输出:"Case #i:"。iii代表第iii组测试数据。 第二行输出“Yes” 或者 “No”,代表四个数字,是否能够满足题目中给的公式。

Sample Input

3
1 3 5 2
1 3 5 1
3 5 99 69

Sample Output

Case #1:
No
Case #2:
Yes
Case #3:
Yes

Hint

对于第一组测试数据:111 mod 5 = 1,公式不成立,所以答案是”No”,而第二组测试数据中满足如上公式,所以答案是 “Yes”。

今年百度之星的原题,本就是一个大数除小整数的求余,又由于,这个大整数有点特殊。这个余数,也是循环出现的。

代码如下:

//百度之星 A
int x, k, c, T, cnt;
long long m;

int main()
{
    cin >> T ;
    for(cnt=1; cnt<=T; cnt++)
    {
        cin >> x >> m >> k >> c ;
        cout << "Case #" << cnt << ":" << endl ;
        int md = 0 ;
        for(int i=0; i<m%k; i++)
        {
            md = md * 10 + x ;
            md %= k ;
        }
        if( md == c ) cout << "Yes" << endl ;
        else cout << "No" << endl ;
    }

    return 0;
}
时间: 2024-11-03 05:27:54

ACM学习之路————一个大整数与一个小整数不得不说得的秘密的相关文章

Linux学习之路4-强大的find命令

强大的find命令:     find [OPTION]... [查找路径] [查找条件] [处理动作] 查找路径:默认为当前路径: 查找条件:指定的查找标准,可以根据文件名.大小.属主属组.类型等进行:默认为找出指定路径下的所有文件: 根据文件名进行查找: -name "文件名称": 支持使用glob: *, ?, [] -iname "文件名称":不区分字符大小写,支持使用glob: -regex"PATTERN":以PATTERN匹配整个文

iOS 视频直播的学习之路 ---- 直播大时代

首先,今天偶尔看了庄明浩先生的一篇演讲,大概内容如下(想看完整版的在这里 https://zhuanlan.zhihu.com/p/20717041): 直播大概是最近一段时间被资本市场疯狂关注,现在我们看到的这些公司上线都已经有段时间.以斗鱼为代表的直播平台,自14年创立到 现在已经有俩年的时间了.映客这一波为代表公司 ,创立的时候应该是15年年初.在15年下半年的时候,他们火过一波.今天为什么关注呢?有很多的原因,有资本市场的原因,有行业发展的原因,当然也有这些公司估值的原因等等.作为一个观

ACM学习之路___HDU 1385(带路径保存的 Floyd)

Description These are N cities in Spring country. Between each pair of cities there may be one transportation track or none. Now there is some cargo that should be delivered from one city to another. The transportation fee consists of two parts: The

ACM学习之路___HDU 5723(kruskal + dfs)

Abandoned country Time Limit: 8000/4000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) Total Submission(s): 4487 Accepted Submission(s): 1131 Problem Description An abandoned country has n(n≤100000) villages which are numbered from 1 to n

【前端小小白的学习之路】----&gt;用JS编写一个函数,返回数组中重复出现过的元素

用JS编写一个函数,返回数组中重复出现过的元素,见下面的代码: var arr = [1, 2, 3, 1, 2, 3, 4, 5]; var getRepeat = function (arr) { var obj = {}; for (var i = 0, len = arr.length; i < len; i++) { if (obj[arr[i]] == undefined) { obj[arr[i]] = 1; } else { obj[arr[i]]++; } } for (var

Golang中切片复制成本,一个大切片会比小切片占用更多内存吗?

原文链接:https://dave.cheney.net/2020/03/01/are-large-slices-more-expensive-than-smaller-ones 程序员有一个迷信的倾向,特别是当一个程序员听说拷贝操作是"昂贵"的(耗时耗内存),而拷贝操作随处可见,特别是当它学习Go的时候,每次赋值都是一次拷贝. func f() { x, y := make([]byte, 9000), make([]byte, 9) a := x b := y // ... } 考

入门大数据领域需要哪些技能|大数据工程师学习之路

入门大数据领域需要哪些技能?大数据学习之路. 大数据是当时时代下一门炙热的IT学科,行情十分火爆,不论是阿里巴巴.百度这样的大公司,还是中小企业都很重视,甚至是第一个纳入国家战略的技术,政府扶持力度大,支持甚多!面对这样的大环境下,大数据相关岗位薪水高,就业前景好.因此也吸引了一大批有志之士,想学习并从事大数据相关工作.那么,大数据应该如何学习呢? 互联网科技发展蓬勃兴起,人工智能时代来临,抓住下一个风口.为帮助那些往想互联网方向转行想学习,却因为 时间不够,资源不足而放弃的人.我自己整理的一份

Spark学习之路 (九)SparkCore的调优之数据倾斜调优

摘抄自:https://tech.meituan.com/spark-tuning-pro.html 数据倾斜调优 调优概述 有的时候,我们可能会遇到大数据计算中一个最棘手的问题——数据倾斜,此时Spark作业的性能会比期望差很多.数据倾斜调优,就是使用各种技术方案解决不同类型的数据倾斜问题,以保证Spark作业的性能. 数据倾斜发生时的现象 绝大多数task执行得都非常快,但个别task执行极慢.比如,总共有1000个task,997个task都在1分钟之内执行完了,但是剩余两三个task却要

一个谷歌程序员的算法学习之路

原文出处: Lucida (@peng_gong) 关于 严格来说,本文题目应该是我的数据结构和算法学习之路,但这个写法实在太绕口——况且CS中的算法往往暗指数据结构和算法(例如算法导论指的实际上是数据结构和算法导论),所以我认为本文题目是合理的. 这篇文章讲了什么? 我这些年学习数据结构和算法的总结. 一些不错的算法书籍和教程. 算法的重要性. 初学 第一次接触数据结构是在大二下学期的数据结构课程.然而这门课程并没有让我入门——当时自己正忙于倒卖各种MP3和耳机,对于这些课程根本就不屑一顾——