AOJ ITP1 1.Getting Started
はい。
http://judge.u-aizu.ac.jp/onlinejudge/topic.jsp?cid=ITP1#problems/ITP1_1
A.Hello World
print'Hello World'
出力内容を''""で囲むとprintとの間に半角スペースを省略できるけど、python3ではprintが変わるし何の役にも立たないアレです。ただ一応はコレが最短コードだと思う。
C++11
#include<bits/stdc++.h> #include<vector> #include<algorithm> using namespace std; int main(){ printf("Hello World\n"); return 0; }
printfのが早いらしいのでcoutは使わずに。
B.X Cubic
print input()**3
代入せずにそのまま3乗して出力する。
C+11
#include<bits/stdc++.h> #include<vector> #include<algorithm> using namespace std; int main(){ int x; scanf("%d",&x); printf("%d\n",x*x*x); return 0; }
pythonのような**xでx乗というのが無いらしいです。辛い。。。
C.Rectangle
a,b=map(int,raw_input().split()) print a*b,(a+b)*2
C++11
#include<bits/stdc++.h> #include<vector> #include<algorithm> using namespace std; int main(){ int a,b; scanf("%d %d",&a,&b); printf("%d %d\n",a*b,a*2+b*2); return 0; }
特に何の工夫もなく受け取った数のままに面積と周を計算する。
D.Watch
n=input() print':'.join(map(str,[n/3600,n%3600/60,n%60]))
C++11
#include<bits/stdc++.h> #include<vector> #include<algorithm> using namespace std; int main(){ int s; scanf("%d",&s); printf("%d:%d:%d\n",s/3600,(s%3600)/60,s%60); return 0; }
60秒->1分で60分->1時間なので3600の商がhに、時間になる。 そして、その余りの60の商が分に、mになる。最後に60の余りが秒に、sになる。同様の問題がABCでも桁を0埋めする必要ありのパターンで出たことがあるような。まだこれからだと思うけど、いつかcodeforcesのDiv2のA問題でも出るかも。