#38355: c(2ms, 88KB)/c++(2ms, 96KB)/java(0.3s, 1.9MB)的解法,三個語言其實蠻接近的


bobobo0413 (Andy)

學校 : 國立臺灣大學
編號 : 252359
來源 : [163.30.63.65]
最後登入時間 :
2024-11-11 10:00:57
m370. 1. 機械鼠 -- 2023年10月APCS | From: [114.137.116.175] | 發表日期 : 2023-11-14 07:29

c(2ms, 88KB)/c++(2ms, 96KB)/java(0.3s, 1.8MB),標頭檔三個語言都不一樣,輸入輸出C和C++一樣,JAVA的輸入輸出比較特別,所以大概C和C++非常像,JAVA稍微有變化,但是語法不會差太多,PYTHON的寫法和這三個語言差異很多。C++和PYTHON比較多人使用,C的缺點是套件少,例如vector在C++有,C沒有。JAVA的缺點是程式耗時長,原始碼輸入的撰寫也複雜。標頭檔C:#include<stdio.h>、C++:#include<cstdio>、JAVA:import java.util.Scanner。輸入C/C++:    scanf("%d %d",&a,&b);、JAVA:Scanner sc = new Scanner(System.in);int x = sc.nextInt();int n = sc.nextInt();。輸出C/C++: printf("%d %d\n",d,g);JAVA: System.out.println(a+" "+b);。解題方法就是紀錄最大最小值,以及大於和小於初始位置的次數。

#include<stdio.h> //C++改成#include<cstdio>、JAVA改成import java.util.Scanner;public class A202310261 {,其中A202310261只是個名稱

int main()              //JAVA改成public static void main(String[] args) {
{
    int a,b;
   scanf("%d %d",&a,&b);    //JAVA改成Scanner sc = new Scanner(System.in);a = sc.nextInt();b = sc.nextInt();
    int c,i,d=0,e=0,f=100,g=-100;
    for(i=0;i<b;i++)
    {
         scanf("%d",&c);         //JAVA改成c = sc.nextInt();
        if(c>a)
        {
            d++;
            if(g<c)
               g=c;
        }
        else if(c<a)
        {
            e++;
            if(f>c)
               f=c;
        }
    }
    if(d>e)
        printf("%d %d\n",d,g);       //JAVA改成System.out.println(d+" "+g);
else if(d<e)
        printf("%d %d\n",e,f);        //JAVA改成System.out.println(e+" "+f);
        return 0;                            //JAVA不用寫這行
}

       
      

 
ZeroJudge Forum