深圳2021-CSP-S-C++初赛题第11题选择题暴力解析

先来看看网友们对今年深圳CSP的评价:

深圳2021-CSP-S-C++初赛题第11题选择题暴力解析_第1张图片

来看下第11题的原题(最终答案通过Java和C++代码运行下来结果一致):

11.有如下递归代码
    solve(t, n):
    if t=1 return 1
    else return 5*solve(t-1,n) mod n
    则 solve(23,23)的结果为( )。
    A. 1                B. 7
    C. 12             D. 22
答案:A

 代码段案例:

#include 
using namespace std;
int solve(int t, int n){
    if(t == 1) return 1;
    else return (5 * solve(t-1, n) % n);
}
int main(){
    cout << solve(23,23) << endl;
    return 0;
}
package dioxide.cn.solve;
public class solve {
    public static int solve(int t, int n){
        if (t == 1) { return 1; }
        else { return 5 * solve(t-1, n) % 23; }
    }
    public static void main(String[] args){
        System.out.println(solve(23, 23));
    }
}

身为啥都不会的初学者,采用的最蠢方案最佳方案就是暴力迭代了,下面是我和@__Lettle__共同探讨得出的思路流程图:

图解
深圳2021-CSP-S-C++初赛题第11题选择题暴力解析_第2张图片

第一次发文章有点小紧张,不知道有没有dalao会来光顾(⑉・̆-・̆⑉)

期待dalao们更简单的解题思路和方法ଘ(੭ˊᵕˋ)੭

你可能感兴趣的:(CSP-S,c++)