5 solutions
-
1
#include <bits/stdc++.h> using namespace std; int a[35],c[35];bool f; string s; int main(int argc, char **argv){ cin >> s; int len = s.length(); for (int i = 0;s[i];i++){ a[i + 1] = s[i] - '0'; } for (int b = 2;b < 10;b++){ int x = 0; for (int i = 1;i <= len;i++){ c[i] = (x * 10 + a[i]) % b; x = (x * 10 + a[i]) % b; } if (!x){ f = 1; printf("%d ",b); } } if (!f){ printf("none"); } return 0; }
-
0
#include <bits/stdc++.h> using namespace std; string ppp; int num[40],size,x,y; bool f; int main(){ cin>>ppp; for(int i=0;i<ppp.size();i++)num[i]=ppp[i]-'0'; ppp.size(); for(int i=2;i<10;i++){ x=0; for(int j=0;j<ppp.size();j++)x=(x*10+num[j])%i; if(!x)f=true,cout<<i<<' '; } if(!f)cout<<"none"; return 0; }
-
0
#include<iostream> using namespace std; int main(){ string a; cin>>a; int n[35]={}; int sum=0,j=0; bool p[10]={}; for(int i=0;i<a.size();i++){ n[a.size()-i-1]=a[i]-48; sum+=n[a.size()-i-1]; } if(n[0]%2==0)p[2]=true; if(sum%3==0)p[3]=true; if((10*n[1]+n[0])%4==0)p[4]=true; if(n[0]==5||n[0]==0)p[5]=true; if(p[2]&&p[3])p[6]=true;; for(int i=0;i<a.size();i+=3){ if(i%2==0)j+=n[i+2]*100+n[i+1]*10+n[i]; if(i%2!=0)j-=n[i+2]*100+n[i+1]*10+n[i]; } if(j%7==0)p[7]=true; if((n[2]*100+n[1]*10+n[0])%8==0)p[8]=true; if(sum%9==0)p[9]=true; for(int i=2;i<10;i++)if(p[i]){ cout<<i<<" "; p[1]=true; } if(!p[1])cout<<"none"; return 0; } //咱就是说,直接用整除规律做不爽吗
-
-2
#include <bits/stdc++.h> using namespace std; int tot; bool s; int n; int main(){ string a; getline(cin,a); int len=a.size(); for(int i=0;i<len;i++) tot+=a[i]-'0'; for(int i=1;i<=1;i++){ if(int(a[len-1]-'0')%2==0){ cout<<2<<" "; s=1; } if(tot%3==0){ cout<<3<<" "; s=1; } if((int(a[len-2]-'0')*10+int(a[len-1]-'0'))%4==0){ cout<<4<<" "; s=1; } if(int(a[len-1]-'0')%5==0){ cout<<5<<" "; s=1; } if(tot%3==0&&int(a[len-1]-'0')%2==0){ cout<<6<<" "; s=1; } } if(len%3==0){ for(int i=0;i<len;i++){ if((i+1)%6==0) n+=(a[i]-'0'); if((i+1)%6==5) n+=10*(a[i]-'0'); if((i+1)%6==4) n+=100*(a[i]-'0'); if((i+1)%6==3) n-=(a[i]-'0'); if((i+1)%6==2) n-=10*(a[i]-'0'); if((i+1)%6==1) n-=100*(a[i]-'0'); } } if(len%6==1){ for(int i=0;i<len;i++){ if(i%6==0&&i!=0) n+=(a[i]-'0'); if(i%6==5&&i!=0) n+=10*(a[i]-'0'); if(i%6==4&&i!=0) n+=100*(a[i]-'0'); if(i%6==3&&i!=0) n-=(a[i]-'0'); if(i%6==2&&i!=0) n-=10*(a[i]-'0'); if(i%6==1&&i!=0) n-=100*(a[i]-'0'); if(i==0) n+=(a[i]-'0'); } } if(len%6==2){ for(int i=0;i<len;i++){ if(abs(i-1)%6==0&&i>1) n+=(a[i]-'0'); if(abs(i-1)%6==5&&i>1) n+=10*(a[i]-'0'); if(abs(i-1)%6==4&&i>1) n+=100*(a[i]-'0'); if(abs(i-1)%6==3&&i>1) n-=(a[i]-'0'); if(abs(i-1)%6==2&&i>1) n-=10*(a[i]-'0'); if(abs(i-1)%6==1&&i>1) n-=100*(a[i]-'0'); if(i==0) n+=10*(a[i]-'0'); if(i==1) n+=(a[i]-'0'); } }if(len%6==4){ for(int i=0;i<len;i++){ if(abs(i-3)%6==0&&i!=0) n+=(a[i]-'0'); if(abs(i-3)%6==1&&i!=0) n+=10*(a[i]-'0'); if(abs(i-3)%6==2&&i!=0) n+=100*(a[i]-'0'); if(abs(i-3)%6==3&&i!=0) n-=(a[i]-'0'); if(abs(i-3)%6==4&&i!=0) n-=10*(a[i]-'0'); if(abs(i-3)%6==5&&i!=0) n-=100*(a[i]-'0'); if(i==0) n-=(a[i]-'0'); } }if(len%6==5){ for(int i=0;i<len;i++){ if(abs(i-4)%6==0&&i>1) n+=(a[i]-'0'); if(abs(i-4)%6==5&&i>1) n+=10*(a[i]-'0'); if(abs(i-4)%6==4&&i>1) n+=100*(a[i]-'0'); if(abs(i-4)%6==3&&i>1) n-=(a[i]-'0'); if(abs(i-4)%6==2&&i>1) n-=10*(a[i]-'0'); if(abs(i-4)%6==1&&i>1) n-=100*(a[i]-'0'); if(i==0) n-=10*(a[i]-'0'); if(i==1) n-=(a[i]-'0'); } } if(n%7==0){ cout<<7<<" "; s=1; } for(int i=1;i<=1;i++){ if((int(a[len-3]-'0')*100+int(a[len-2]-'0')*10+int(a[len-1]-'0'))%8==0){ cout<<8<<" "; s=1; } if(tot%9==0){ cout<<9; s=1; } if(s==0) cout<<"none"; } return 0; }
- 1
Information
- ID
- 657
- Time
- 1000ms
- Memory
- 256MiB
- Difficulty
- 6
- Tags
- # Submissions
- 105
- Accepted
- 29
- Uploaded By