6 条题解

  • 1
    @ 2025-1-9 17:01:34

    国王的金币题解

    有一位智慧而慷慨的国王要给大臣发金币,发放的规则如下:

    第一周每天发 1 个,第二周每天发 2 个,第三周每天发 3 个,以此类推...

    请编写程序,输入一个正整数n表示天数,输出大臣过了n天后可以拿到多少金币。

    这道题让我们算大臣能领到的金币汇总。 我们需要发现的是规律。 找到规律后,我们要思考我们的循环里要干什么,我这里是一次循环算一天。

    代码
    #include<bits/stdc++.h>
    using namespace std;
    int main(){
    	int n,j=1,z=1;
    	cin>>n;
    	for(int i=1;i<n;i++){
    		if(i%7==0){
    			j++;
    			z+=j;
    		}
    		else{
    			z+=j;
    		}
    	}
    	cout<<z;
    }
    
    • 0
      @ 2025-1-13 17:01:46

      #国王的金币题解

      #题意分析

      #这道题要按照题目规则求出大臣 n 天后获得多少金币。

      #思路

      #设置一个按周来算的循环,用i表示每天币数,算出一周的金币,加到累加和。另一种情况,有多出几天,再循环外用%求出,另算一周。

      #代码

      #include<iostream>
      using namespace std;
      int main(){
      	int n,s,m=0,r,a;
      	cin>>n;
      	for(int i=1;i<=n/7;i++){
      			s=i*7;
      		    m+=s;
          }
          r=n%7;
          a=r*(n/7+1);
          cout<<m+a;
      	return 0;
      }
      
      • 0
        @ 2025-1-10 14:09:40

        题意分析

        有一个国王给大臣发金币,第一周每天发 1 个,第二周每天发 2 个,第三周每天发 3 个,以此类推...

        思路

        用i表示天数;判断如果过了7天;金币就加1

        #include<iostream>
        using namespace std;
        int main() {
        	int n,a=1,s=0;
        	cin>>n;
        	for(int i=1; i<=n; i++) {
        		s=s+a;
        		if(i%7==0) {
        			a++;
        		}
        	}
        	cout<<s;
        }
        • 0
          @ 2025-1-10 14:05:07

          题意分析

          有一个国王给大臣发金币,第一周每天发 1 个,第二周每天发 2 个,第三周每天发 3 个,以此类推...

          思路

          用i表示天数;判断如果过了7天;金币就加1

          #include<iostream>
          using namespace std;
          int main() {
          	int n,a=1,s=0;
          	cin>>n;
          	for(int i=1; i<=n; i++) {
          		s=s+a;
          		if(i%7==0) {
          			a++;
          		}
          	}
          	cout<<s;
          }
          • 0
            @ 2025-1-10 14:03:03

            题目描述 让我们将国王给大臣发的金币给汇总 #include using namespace std;

            int main(){ long long n,b=1,c=1; cin>>n;

            for(int i=1;i<n;i++){
            	
            	if(i%7==0){
            		b++;
            		c+=b;
            	}
            	else {
            		c+=b;
            	}
            	
            	
            	
            }
            cout<<c;
            

            }

            • 0
              @ 2025-1-10 11:20:57

              国王的金币题解

              题目让我们按照规律求出金币总数。

              可以以两种不同的情况写,用循环求出完整一周的金币,加到累加和。如有多余几天,可以单独求出,并计算金币。

              代码

              #include<iostream>
              using namespace std;
              int main(){
              	int n,s,m=0,r,a;
              	cin>>n;
              	for(int i=1;i<=n/7;i++){
              			s=i*7;
              		    m+=s;
                  }
                  r=n%7;
                  a=r*(n/7+1);
                  cout<<m+a;
              	return 0;
              }
              
              • 1

              信息

              ID
              67
              时间
              1000ms
              内存
              256MiB
              难度
              6
              标签
              递交数
              23
              已通过
              10
              上传者