搜狐编程第二题

package test;

import java.util.Scanner;

public class Test3 {
public static void main(String[] args) {
    
    Scanner sc = new Scanner(System.in);
    int len =sc.nextInt();
    int [] arr = new int [len];
    int cout = 0;
    int sum=0;
    while (sc.hasNext()){
        for (int i = 0; i < len; i++) {
            arr[i] = sc.nextInt();
        }

            for (int i = 0; i < arr.length/2; i++) {
                if (arr[i]!=arr[len-1-i]) {
                    cout=cout+2;
                }
            }
        
        int [] arr1 = new int[cout+len];
        for (int i = 0; i < arr.length; i++) {
            if (arr[i]!=arr[len-1-i]){
                if (i<(cout+len)/2) {
                    arr1[i+1]=arr[len-1-i];
                }
                
            }
            else if (i<(cout+len)/2) {
                arr1[i]=arr[i];
            
        }
        for (int i = 0; i < arr1.length; i++) {
            arr1[(cout+len)-i] = arr1[i];
        }
        
        for (int i = 0; i < arr1.length; i++) {
            sum=sum+arr1[i];
        }

        System.out.println(sum);

    }
    sc.close();
    
    
    
}
}

全部评论
#include <iostream> #include <vector> using namespace std; int main() {     int N;     cin >> N;     int a[N];     for (int i = 0;i < N;++i)         cin >> a[i];     int i = 0, j = N - 1,sum = 0;     while (i <= j)     {         if (a[i] == a[j])         {             if (i < j)             {                 sum += (a[i] + a[j]);                 ++i;                 --j;             }             else if (i == j)             {                 sum += a[i];                 break;             }         }         else         {             if (a[i] < a[j])             {                 sum += (2 * a[i]);                 ++i;             }             else             {                 sum += (2 * a[j]);                 --j;             }         }     }     cout << sum<< endl;     return 0; }
点赞 回复 分享
发布于 2017-09-17 22:00
AC 了吗 能不能讲讲思路
点赞 回复 分享
发布于 2017-09-17 21:26
ac了?
点赞 回复 分享
发布于 2017-09-17 21:16

相关推荐

迷茫的大四🐶:自信一点,我认为你可以拿到50k,低于50k完全配不上你的能力,兄弟,不要被他们骗了,你可以的
点赞 评论 收藏
分享
04-18 00:32
已编辑
中南大学 Java
点赞 评论 收藏
分享
评论
点赞
5
分享

创作者周榜

更多
牛客网
牛客企业服务