CodeForces 550C Divisibility by Eight(枚举)
来源:互联网 发布:中国数据统计局 编辑:程序博客网 时间:2024/05/17 21:52
【题目链接】click here~~
【题目大意】
给一个不超过100位的数字,要求能否删掉几位数,剩下的数能被8整除
【解题思路】:这里有个性质:如果一个数后三位能被8整除,那么这个数就能被8整除
证明:举一个5位数的例子吧,
例如
_____ _____ __ __ __ __ ___
abcde=ab000+cde=1000×ab+cde=8×125×ab+cde
很明显,8×125×ab一定是8或者125的倍数,因此当cde能被8或者125整除时,五位数abcde就能被8或者125整除。位数再多也是一样的,主要是1000=125*8
那么只要枚举后三位即可
代码:
#include <bits/stdc++.h>using namespace std;int main(){ char str[110]; while(cin>>str) { bool ok=false; int len=strlen(str); for(int i=0; i<len; ++i) { if((str[i]-'0')%8==0) { puts("YES"); cout<<(str[i]-'0')<<endl; return 0; } } for(int i=0; i<len; ++i) { for(int j=i+1; j<len; ++j) { if(((str[i]-'0')*10+(str[j]-'0'))%8==0) { puts("YES"); cout<<((str[i]-'0')*10+(str[j]-'0'))<<endl; return 0; } } } for(int i=0; i<len; ++i) { for(int j=i+1; j<len; ++j) { for(int k=j+1; k<len; ++k) { if(((str[i]-'0')*100+(str[j]-'0')*10+str[k]-'0')%8==0) { puts("YES"); cout<<((str[i]-'0')*100+(str[j]-'0')*10+str[k]-'0')<<endl; return 0; } } } } puts("NO"); }}官方题解是用dp,麻烦一些。
1 0
- CodeForces 550C Divisibility by Eight(枚举)
- CodeForces 550C Divisibility by Eight 数学 枚举
- 550C Divisibility by Eight(还是枚举)
- CODEFORCES 550 C. Divisibility by Eight
- codeforces 550C Divisibility by Eight(数学题)
- Codeforces 550 C. Divisibility by Eight
- 【codeforces 550C】Divisibility by Eight
- codeforces #306 550C C. Divisibility by Eight(同余模定理+枚举)
- CodeForces 550C Divisibility by Eight (规律,暴力)
- codeforces 550C Divisibility by Eight (暴力)
- Codeforces Divisibility by Eight
- C. Divisibility by Eight
- codeforce 550c Divisibility by Eight (DFS)
- cf 550c Divisibility by Eight 【规律】
- Codeforces Round #306 (Div. 2)C. Divisibility by Eight--模拟
- Codeforces Round #306 (Div. 2) C.Divisibility by Eight
- CF C. Divisibility by Eight
- CodeForces 550C Divisibility by Eight 简单题算是找规律?
- sgu283:Mechanics(计算几何)
- Android中获取JSON
- 公司待遇
- 2015062702 - 裴行俭
- 剑豪生死斗小说
- CodeForces 550C Divisibility by Eight(枚举)
- 【看了一篇解释javascript中的上下文对象的,比较深刻】深入理解Javascript之执行上下文(Execution Context)
- js操作下拉标签select
- Android Tips
- Leetcode 6 ZigZag Conversion
- 只为成功找方法,不为失败找借口! 随笔分类 - JavaWeb学习总结
- 洪晃说
- UIView的xib和UIViewController的xib的区别
- CMake快速入门