国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

HDU 5832 A water problem

2019-11-11 06:39:20
字體:
來源:轉載
供稿:網友

HDU 5832 A water PRoblem

編程能力題,大數

想當初打網預時這題。。寫了半天java,都是MLE。。C++大數的板子也各種掛。。最后隊友過的這題。。賽后也沒去看。。現在回憶一下,補個題解,長個見識。

傳送門:HDU


題意

給你一個很大的數,數字位數有10000000個。問你它是不是73和137的倍數。


思路

同時是73和137的倍數,這數必定是10001(137*73)的倍數。 一個數字一個數字的處理,再利用取模的性質,可以得到 res=(res*10+a)%mod 想不明白的話想想一個數字一個數字讀入,怎么轉化成一個數?就是讀一個數字,把原來結果*10加上它。


代碼

#include<cstdio>#include<cstdlib>#include<iostream>#include<algorithm>#include<string>#include<cstring>#include<vector>#include<cmath>#include<queue>#define _ ios_base::sync_with_stdio(0);cin.tie(0);using namespace std;const int MAXN=5005;const int oo=0x3f3f3f3f;typedef long long LL;const LL loo=4223372036854775807ll;const int MOD=73*137;char a[10000007];int main(){_ int res=0; int count=0; while(scanf("%s",a)==1) { for(int i=0;i<strlen(a);i++) { res=(res*10+(a[i]-'0'))%MOD; } cout<<"Case #"<<++count<<": "; cout<<(res==0 ? "YES" : "NO")<<endl; res=0; } //system("pause"); return 0;}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 延吉市| 菏泽市| 绍兴市| 吉木乃县| 新丰县| 南郑县| 鄯善县| 铜梁县| 河曲县| 恩施市| 高安市| 博罗县| 和平区| 临高县| 商丘市| 扶沟县| 繁昌县| 荔波县| 揭阳市| 商城县| 新绛县| 壤塘县| 西盟| 于都县| 牡丹江市| 龙江县| 英吉沙县| 洪洞县| 越西县| 岫岩| 邓州市| 乌拉特前旗| 宜良县| 上林县| 班玛县| 临夏县| 岳阳市| 高州市| 马龙县| 通州市| 金平|