文化课集合A(culture_a):题解

· · 生活·游记

文化课集合A(culture_a)题解

如果没做过可以去现做一下 题目。

第二篇题解还在写,可以去现做一下题目。

第一题

题目分析

题目给出晒手帕的规律:

观察可知,夹子数总比手帕数多 1。因此,晒 n 块手帕需要 n+1 只夹子。

n = 1145145201314时:

k = n + 1 = 1145145201314 + 1 = 1145145201315

答案1145145201315

第二题

题目分析

设糖的数量为k,则满足:

即:

\begin{cases} k = 121a + 3 \\ k = 999b + 1 \end{cases}

联立方程:

121a + 3 = 999b + 1

整理得:

121a - 999b = -2

等价于同余方程:

121a \equiv 997 \pmod{999}

求解得特解a=355

k = 121 \times 355 + 3 = 42958

答案42958

Or

找规律。

第三题

题目分析

\gcd(78452, 63197)的值。使用辗转相除法。

计算过程:

最大公约数为1

答案1

Or

cout<<__gcd(78452, 63197);

第五题

题目分析

计算表达式:

[(98765432+12345678×56)+(87654321+6543210×43)]×[(76543210×28+9876543)÷(543210−123456)×15]+98765432÷16

注意:除法为整数除法(取商)

分步计算:

第一部分:左括号内

第二部分:右括号内

第三部分:乘法

1159135751 \times 76935 = 89178109003185

第四部分:除法

98765432 \div 16 = 6172839

总和

89178109003185 + 6172839 = 89178109066024

答案89178109066024

Or

cout<<...(懒得打)

代码


#include<bits/stdc++.h>
using namespace std;
char T;
int main()
{
    //freopen("culture_a.in","r",stdin);
    //freopen("culture_a.out","w",stdout);
    cin>>T;
    string ans[]= 
    {
        "1145145201315",  
        "42958",              
        "1",            
        "89178109066024"  
    };
    cout<<ans[T-'1']<<endl;
    return 0;
}