26 条题解
-
0November (CLH_W) LV 10 @ 2022-04-30 22:38:36
#include<iostream> #include<string> using namespace std; string s; int len=1,i; int sum2=0; int ans=1; int a[8]={1,3,1,9,9,7,9,1}; int g(int n){ if(n==1) return a[0]; if(n==2) return a[1]; sum2-=(n+2)/5; //2的指数减去5的指数 return (g((n+2)/5)*a[(n-(n+2)/5-1)%8])%10; } int f(int n){ if(n==1) return 1; sum2+=n/2; //加上2的指数 return (f(n/2)*g(n-n/2))%10; } int main() { cin>>s; for(len=1;len<=s.size();len++) if(s.size()%len==0) { for(i=0;i<s.size();++i) if(s[i%len]!=s[i]) break; if(i>=s.size()) break; } int n=0; for(i=0;i<len;++i) n=n*10+s[i]-'0'; ans=f(n); while(sum2>0) { sum2--; ans*=2; ans%=10; } while(sum2<0) { sum2++; ans*=5; ans%=10; } cout<<ans<<endl; }
-
02009-10-11 16:28:13@
我倒。硬着头皮交了N次的216.。。
数组开小了O.O
-
02009-10-11 16:09:15@
神了.....
我交了1遍,通过人数中我出现了2次....... -
02009-09-13 19:57:17@
Orz楼下神牛,我传了8遍,结果高精度数组没清零
-
02009-09-13 17:37:19@
3遍AC……
-
02009-08-12 21:58:22@
大牛门用的都什么方法啊?
我的方法只要那最小周期串长度>10就挂了
=10也很危险 -
02009-07-18 21:28:42@
周期可以是不完全的吗?
比如说"12112"的最小可以看成是"121"吗? -
02009-07-13 09:31:29@
编译通过...
├ 测试数据 01:答案正确... 0ms
├ 测试数据 02:答案正确... 0ms
├ 测试数据 03:答案正确... 0ms
├ 测试数据 04:答案正确... 0ms
├ 测试数据 05:答案正确... 0ms
├ 测试数据 06:答案正确... 0ms
├ 测试数据 07:答案正确... 0ms
├ 测试数据 08:答案正确... 0ms
├ 测试数据 09:答案正确... 0ms
├ 测试数据 10:答案正确... 0ms
├ 测试数据 11:答案正确... 0ms
├ 测试数据 12:答案正确... 0ms
├ 测试数据 13:答案正确... 0ms
├ 测试数据 14:答案正确... 0ms
├ 测试数据 15:答案正确... 0ms
├ 测试数据 16:答案正确... 0ms
├ 测试数据 17:答案正确... 0ms
├ 测试数据 18:答案正确... 0ms
├ 测试数据 19:答案正确... 0ms
├ 测试数据 20:答案正确... 0ms
---|---|---|---|---|---|---|---|-
Accepted 有效得分:100 有效耗时:0ms就因为把>=打成=WA了2次......
公式f(n)=f([n/5])*4^([n/10] mod 2)*f(n mod 10) mod 10 -
02009-05-18 19:53:39@
这里的最小周期串是什么意思?131113111能不能把13111看成最小周期串?
-
02009-03-16 16:47:27@
最小周期串一直求错!!
-
02009-03-02 09:07:27@
program kk;
var ss,s:string;
n,l,i,j:integer;
ji:longint;
a:array[1..1000] of char;
begin
read(ss);
l:=length(ss);
for i:=1 to l do
for j:=1 to l-i do
if ss[1+j]=ss then
begin
n:=ord(ss)-ord('0');
break;
end;
ji:=1;
for i:=1 to n do
begin
ji:=ji*i;
while ji mod 10=0 do ji:=ji div 10;
if ji mod 100 then ji:=ji mod 10;
end;
str(ji,s);
l:=length(s);
for i:=1 to l do
a[i]:=s[i];
for i:=l downto 1 do
if a[i]'0' then
begin
writeln(a[i]);
exit;
end;
end. -
02009-02-16 14:13:29@
这题很难么?
-
02009-02-15 14:34:35@
谁把第一个点的数据给我一下,死活不对。
-
02009-02-14 21:49:28@
这解题报告很好很强大
-
02009-02-14 10:30:25@
楼下的解题报告很精辟。
-
02009-02-07 18:58:58@
VIJOS P1505 信息学老师的失误解题报告 http://plfxy.blog.hexun.com/29038074_d.html
-
02009-02-05 15:19:48@
郁闷 哪里出错都不知道..
好想要数据啊.. -
02009-02-05 14:42:45@
我是时代中学,支持时代!!!
-
02009-02-05 12:41:54@
..我汗..麻烦..
-
02009-02-05 11:19:13@
神奇的curimit大牛竟然用一句地核.将他原来长达500余的精彩题解覆盖了!!
没他的题解想过此题恐怕有点难度..