1145 簡單遊戲 easygame

2021-07-16 16:01:28 字數 1498 閱讀 4285

題目描述

一天,小

r準備找小

h去游泳,當他找到小

h時,發現小

h正在痛苦地寫著一列數,1,

2,3,

…n,於是就問小

h痛苦的原因,小

h告訴他,現在他要算

1..n

這些數裡面,

1出現的次數是多少,如

n=11

的時候,有

1,10,11

共出現4次1

,現在給出

n,你能快速給出答案麼?

輸入

一行,就是

n,(1<=n<=maxlongint)

輸出

乙個整數,表示

1..n中1

出現的次數。

樣例輸入

11
樣例輸出

4
思路:

這題找規律,**如下:

var

s,s1,s2:string;

i,x,x1,n,j:longint;

ans:int64;

begin

assign(input,'easygame.in');reset(input);

assign(output,'easygame.out');rewrite(output);

readln(s);

s:='0'+s;

for i:=length(s) downto 2 do

begin

n:=1;

if (i<>length(s)) then

begin

s1:=copy(s,1,i-1);

s2:=copy(s,i+1,length(s)-i+1);

for j:=1 to length(s)-i do

n:=n*10;

val(s1,x);

val(s2,x1);

x:=x+1;

if (s[i]='0')

then begin x1:=0;dec(x);end;

if (s[i]='1')

then ans:=ans+x*n-(n-x1-1)

else ans:=ans+x*n;

end;

if i=length(s) then

begin

s1:=copy(s,1,length(s)-1);

val(s1,x);

ans:=ans+x+1;

if s[i]='0' then dec(ans);

end;

end;

writeln(ans);

close(input);close(output);

end.

簡單遊戲框架

引用 最近一段時間不是很忙,就寫了乙個自己的遊戲伺服器框架雛形,很多地方還不夠完善,但是基本上也算是能夠跑起來了。我先從上層結構說起,一直到實現細節吧,想起什麼就寫什麼。第一部分 伺服器邏輯 伺服器這邊簡單的分為三個部分,客戶端的連線首先到達閘道器伺服器,閘道器這裡有個執行緒用來監聽來自與客戶端的連...

簡單遊戲 easygame

題目描述 一天,小r準備找小h去游泳,當他找到小h時,發現小h正在痛苦地寫著一列數,1,2,3,n,於是就問小h痛苦的原因,小h告訴他,現在他要算1 n這些數裡面,1出現的次數是多少,如n 11的時候,有1,10,11共出現4次1,現在給出n,你能快速給出答案麼?輸入一行,乙個整數n 輸出乙個整數,...

簡單遊戲框架

引用 最近一段時間不是很忙,就寫了乙個自己的遊戲伺服器框架雛形,很多地方還不夠完善,但是基本上也算是能夠跑起來了。我先從上層結構說起,一直到實現細節吧,想起什麼就寫什麼。第一部分 伺服器邏輯 伺服器這邊簡單的分為三個部分,客戶端的連線首先到達閘道器伺服器,閘道器這裡有個執行緒用來監聽來自與客戶端的連...