백준에서 

내가 만든 코드와 비교하고 있는 와중에 아래와 같이 cin>>n; 후에 int a[n]={};이 된다는 것을 봤다.! 심지어 for문을 보면 a[i] =t;가 적혀져있다..

#include <iostream>

using namespace std;

int main()
{
    int n;
    cin>>n;
    int a[n]={};
    int m=0;
    int t=0;
    for(int i=0; i<n; i++)
    {
        cin>>t;
        if (t > m)
        {
            m=t;
        }
            a[i]=t;
    }

    float s=0;
    for(int i=0; i<n; i++)
    {
        //cout<<s<<endl;
        s=s+(float)a[i]/(float)m*100;
        //cout<<s<<endl;
    }
    cout<<s/(float)n;
    return 0;
}

처음에 내 눈을 의심했다. 안되는걸로 알고 있는데 맞았습니다!!로 뜬다는것에.. 이런 방식도 지원을 하는건가?

VS말고 다른 ide에서는 가변크기배열 된다고들었다는 사람도 있고 c++ 최신 문법일수도 있다고 한다.

문제의 소스코드 링크

https://www.acmicpc.net/source/16987090

 

로그인

 

www.acmicpc.net

 

 

이것저것 찾다보니 답을 스택오버플로우에서 찾았다.

https://stackoverflow.com/questions/40633344/variable-length-arrays-in-c14

 

+ Recent posts