Difference between r1.6 and the current
@@ -57,12 +57,3 @@
n=input("줄 수")
pascal(n)
}}}
알고리즘은 쉬운데 파이썬은 개행이 자동인데다가 공백도 자동으로 들어가서 힘드네요 ㅠ
암튼 수학문제는 수학책이 진리인듯요 ㅋ
그리고 확실히 C++보단 Python이 코딩하기는 쉬운거 같습니다.
Python의 자동개행, 자동공백 문제 해결하는 방법 찾느라 오래걸려서 그렇지. C++로는 길게 짜야되는데 Python으로짜니까 간단히 끝나네요. 문법에만 적용된다면 금방금방 짜는게 가능할 것 같습니다
또 실행할 때 큰 수를 치면 C++은 잘려버려서 연산이 안 되지만, Python은 열심히 연산을 해주는 차이점도 보이구요.
그나저나 속도는 C++이 Python보다는 확실히 빠르네요
pascal(n)
}}}
C++
#include<iostream> using namespace std; int fac(int n) { if(n==0) return 1; else return n*fac(n-1); } int combi(int n,int k) { return fac(n)/(fac(k)*fac(n-k)); } int main() { cout<<"몇 줄?"; int line; cin>>line; int i,j; for(i=0;i<line;i++) { for(j=0;j<line-i;j++) cout<<" "; for(j=0;j<=i;j++) cout<<combi(i,j)<<" "; cout<<endl; } return 0; }
- Python
def fac(n): if(n==0): return 1 else: return n*fac(n-1) def combi(n,k): return fac(n)/(fac(k)*fac(n-k)) def pascal(n): for i in range(0,n,1): for j in range(0,n-i,1): print "", for j in range(0,i+1,1): print combi(i,j), print "\n" n=input("줄 수") pascal(n)