3 条题解

  • 4
    @ 2026-5-26 9:57:53

    代码

    #include<iostream>
    using namespace std;
    
    int main(){
    	int z[100000];
    	int a,b=0;
    	cin>>a;
    	
    	for(int i=1;i<=a;i++){
    		cin>>z[i];
    	}
    	for(int i=1;i<=a;i++){
    		if (z[i]%7==0){
    			if (z[i]%3==0){
    				if (z[i]>=b){
    					b=z[i];
    					
    				}
    			}
    		}
    	}
    	cout<<b<<endl;
    	return 0;
    }
    
    
    

    这里是加上注释的代码

    #include<iostream>
    using namespace std;
    
    int main(){
    	int z[100000];//中括号是说这个变量里面有很多个数据
    	int a,b=0;//上下两行变量应该可以缩成一行,只不过这样方便展示
    	cin>>a;//这里是第一行要输入的数据数量
    	
    	for(int i=1;i<=a;i++){
    		cin>>z[i];//循环输入数据
    	}
    	for(int i=1;i<=a;i++){
    		if (z[i]%7==0){//这里检测数据是否是7的倍数
    			if (z[i]%3==0){//这里再检测是否是3的倍数
    				if (z[i]>=b){//如果数字更大就替换
    					b=z[i];
    					
    				}
    			}
    		}
    	}
    	cout<<b<<endl;//输出,这里很基础了吧
    	return 0;
    }
    
    
    
    • @ 2026-5-26 10:01:26

      挺基础的做法吧 我也没学很深暂时、、、

    • @ 2026-5-26 13:48:18

      谢谢!

  • 2
    @ 2026-7-1 20:14:50

    那个......我想知道这题难度为什么是5......

    是的,我又是来水题解的。

    对于这么简单的题,我们只需要判断a[i]是否能同时整除7和3再取最大值就行了。

    AC代码如下:

    #include<bits/stdc++.h>
    using namespace std;
    const int N=1e2+9;
    int a[N];
    int main(){
        int n;
        cin>>n;
        int ans=0;
        for(int i=1;i<=n;i++){
            cin>>a[i];
            if(a[i]%7==0&&a[i]%3==0){
                ans=max(ans,a[i]);
            }
        }
        cout<<ans;
      //是不是有人奇怪这里要不要判一下a数组中是否有能同时整除7和3?
      //其实不用。因为如果没有,for循环里的if语句就不会被执行,就会输出ans的初始值0,符合题意。
        return 0;
    }
    
    
    • 1
      @ 2026-7-8 10:50:10

      这道题其实可以不用数组,边读边算,代码如下。

      #include <iostream>
      #include <algorithm>
      using namespace std;
      int main() {
          ios::sync_with_stdio(false);
          cin.tie(nullptr);
      
          int n,ans = 0;
          cin >> n;
          for (int i = 0; i < n; i++) {
              int a;
              cin >> a;
              if (a % 21 == 0) {
                  ans = max(a,ans);
              }
          }
          cout << ans;
      
          return 0;
      }
      
      • 1

      信息

      ID
      45
      时间
      1000ms
      内存
      256MiB
      难度
      1
      标签
      递交数
      185
      已通过
      72
      上传者