本文共 1513 字,大约阅读时间需要 5 分钟。
题目链接:
AC代码:
#includeusing namespace std;#define _for(i,a,b) for(int i=a;i<=b;i++)char a[4][4];int main(int argc, char const *argv[]){ _for(i,1,3) { _for(j,1,3)cin>>a[i][j]; } cout< < < <
B题题意:求给定区间中回文数的个数。
B题题解:暴力即可。
AC代码:
#includeusing namespace std;#define _for(i,a,b) for(int i=a;i<=b;i++)bool check(int x) { if (x < 0) return false; int div = 1; while (x / div >= 10) { div *= 10; } while (x != 0) { int l = x / div; int r = x % 10; if (l != r) return false; x = (x % div) / 10; div /= 100; } return true; } int n,m;int main(int argc, char const *argv[]){ cin>>n>>m; int ans = 0; _for(i,n,m)if(check(i))ans++; cout< <
C题题意:给定一个矩阵,每个点放正面朝上的牌,依次翻动每张牌,翻动时会同时翻动该点周围8个点的牌,问最后正面朝下的牌的个数
C题题解:对于只有一行的情况就是只有两头的牌最后是正面朝上的,多行的情况下可以看出只有最外围一圈的牌翻动偶数次,即最后正面朝上。
AC代码:
#includeusing namespace std;#define _for(i,a,b) for(int i=a;i<=b;i++)long long n,m;int main(int argc, char const *argv[]){ cin>>n>>m; if(n==1&m==1)cout<<1<
D题题意:给定范围N和一个整数K,找到小于N的两个数a,b,使得a除以b的余数>=K,问有多少个这样的组合
D题题解:对i(k<i<=n),那么i在每个长度为k的区间内,当k<a<i,b=i时都满足条件,然后统计在N以内有多少个这样的区间即可。
AC代码:
#includeusing namespace std;#define _for(i,a,b) for(int i=a;i<=b;i++)int n,k;int main(int argc, char const *argv[]){ long long ans = 0; cin>>n>>k; int g = 0; if(k==0)cout<<(long long)n*n< =k)gg = kk-k+1; ans+=gg; ans+=now*num; } cout< <
转载地址:http://tnhpi.baihongyu.com/