1 solutions
-
0
C++ :
#include<iostream> using namespace std; int main() { long h,fz,fm,n,sum=0; cin>>n; h=0; sum=0; while(sum<n) { h++; sum+=h; } sum-=h; int m;//表示第m项 m=n-sum; if(h&1) { fm=m; fz=h+1-m; } else { fz=m; fm=h+1-m; } cout<<fz<<'/'<<fm<<endl; return 0; }Pascal :
var n,i,a,b:longint;flag:boolean; function w(i:longint):longint; var j:longint; begin w:=0; for j:=1 to i do w:=w+j; end; begin read(n); for i:=1 to 1000 do begin if n<=w(i) then begin a:=i;n:=n-w(i-1);break;end; end; if a mod 2=0 then flag:=false else flag:=true; b:=1; if flag then begin for i:=a downto 1 do begin if b=n then begin writeln(i,'/',a-i+1);halt;end else inc(b); end;end else begin for i:=1 to a do begin if b=n then begin writeln(i,'/',a-i+1);halt;end else inc(b); end; end; end.
- 1
Information
- ID
- 20020
- Time
- 1000ms
- Memory
- 128MiB
- Difficulty
- (None)
- Tags
- # Submissions
- 0
- Accepted
- 0
- Uploaded By