• 萌新训练赛(1)


     下次准备写py 和 c++两种版本

    A-[NOIP2008]火柴棒等式

     分两种情况,一种含有0,一种不含有0,简单模拟

    C++ 

    1. #include
    2. #define ll long long
    3. using namespace std;
    4. int cnt[10]={6,2,5,5,4,5,6,3,7,6};
    5. int main(){
    6. int n;cin>>n;
    7. int ans=0;
    8. n-=4;
    9. //不考虑存在0的情况
    10. for(int i=1;i<=1111;i++){
    11. for(int j=1;j<=1111;j++){
    12. int t=0,temi=i,temj=j,tem=i+j;
    13. while(temi){ t+=cnt[temi%10];temi/=10; };
    14. while(temj){ t+=cnt[temj%10];temj/=10; };
    15. while(tem){ t+=cnt[tem%10];tem/=10; };
    16. if(t==n)ans++;
    17. }
    18. }
    19. if(n%2==0){
    20. int k=(n-6)/2;0i
    21. //考虑0+0=0
    22. if(k==6)ans++;
    23. for(int i=1;i<11111;i++){
    24. int tem=i,t=0;
    25. while(tem){ t+=cnt[tem%10];tem/=10; }
    26. if(t==k)ans+=2;
    27. }
    28. }
    29. cout<
    30. return 0;
    31. }

    python 

    TLE 代码,应该优化一下可以过,但是主要是练py语法,懒得改了

    1. n=int(input())-4
    2. ls =[6,2,5,5,4,5,6,3,7,6]
    3. ans=0;
    4. #不考虑存在0的情况
    5. for i in range(1,111):
    6. for j in range(i,111):
    7. t = 0
    8. t += sum([ls[q] for q in list(map(int,list(str(i))))])
    9. t += sum([ls[q] for q in list(map(int,list(str(j))))])
    10. t += sum([ls[q] for q in list(map(int,list(str(i+j))))])
    11. if t==n :
    12. if i==j : ans+=1
    13. else : ans+=2
    14. #考虑存在0的情况
    15. if n%2 == 0 :
    16. k=(n-6)/2
    17. #考虑0+0=0
    18. if k==6 :
    19. ans+=1;
    20. for i in range(1,1112) :
    21. t = 0
    22. t += sum([ls[q] for q in list(map(int,list(str(i))))])
    23. if t==k :
    24. ans+=2
    25. print(ans)

    B-[NOIP2014]珠心算测试

     先排序,从最大数遍历,第三个数通过st[]优化运时

    C++ 

    1. #include
    2. #define ll long long
    3. using namespace std;
    4. int a[110],st[10010];
    5. int main(){
    6. int n,cnt=0;cin>>n;
    7. for(int i=0;i
    8. cin>>a[i];
    9. st[a[i]]=1;
    10. }
    11. sort(a,a+n);
    12. for(int i=n-1;i>=2;i--){
    13. for(int j=i-1;j>=0;j--){
    14. if( st[a[i]-a[j]] ){ cnt++; break; }
    15. }
    16. }
    17. cout<
    18. return 0;
    19. }

    python

    1. n=input()
    2. ls=list(map(int,input().split()))
    3. cnt=0
    4. for i in range(len(ls)):
    5. for j in range(i+1,len(ls)):
    6. if ls[j]>ls[i]:
    7. temp=ls[i]
    8. ls[i]=ls[j]
    9. ls[j]=temp
    10. for i in range(0,len(ls)):
    11. flag=0
    12. for q in range(i+1,len(ls)):
    13. for p in range(q+1,len(ls)):
    14. if ls[i]==ls[p]+ls[q]:
    15. flag=1
    16. if flag==1 :
    17. cnt+=1
    18. print(cnt)

    C-[NOIP2009]多项式输出

    真的写了好多遍这题了...(两种解法:1.按项讨论;2.按每项分为符号 系数...)

    1. #include
    2. #define ll long long
    3. using namespace std;
    4. int a[110];
    5. int main(){
    6. int n;cin>>n;
    7. for(int i=n;i>=0;i--)cin>>a[i];
    8. for(int i=n;i>=0;i--){
    9. if(a[i]==0)continue;
    10. if(a[i]<0)cout<<'-';
    11. else if(i!=n && a[i]>0)cout<<'+';
    12. if(i==0)cout<<abs(a[i]);
    13. else if(abs(a[i])!=1)cout<<abs(a[i]);
    14. if(i>=1)cout<<'x';
    15. if(i!=1 && i!=0)cout<<'^'<
    16. }
    17. return 0;
    18. }

    D-[NOIP2012]质因数分解

    水题

    1. #include
    2. #define ll long long
    3. using namespace std;
    4. int main(){
    5. int n,p;cin>>n;
    6. for(int i=2;i
    7. if(n%i==0){p=i;break;}
    8. cout<
    9. return 0;
    10. }

    E-[NOIP2001]数的计算

    简单dp(递推也行):f[i]=1+f[i/2]+f[i/2-1]+...+f[1]

    解析:每个自然数左边可以加上小于他一半的数的所有的满足性质的数(f[i/2]+f[i/2-1]+...+f[1]),或者不加(+1)

    1. #include
    2. #define ll long long
    3. using namespace std;
    4. int f[1010];
    5. int main(){
    6. int n;cin>>n;
    7. f[1]=1;
    8. for(int i=2;i<=n;i++){
    9. f[i]=1;
    10. for(int j=1;j*2<=i;j++)
    11. f[i]+=f[j];
    12. }
    13. cout<
    14. return 0;
    15. }

  • 相关阅读:
    化交易之One Piece篇 - onepiece_rsh - reset trading_time.json
    Azure - 机器学习:使用自动化机器学习训练计算机视觉模型的数据架构
    基于elasticjob的入门maven项目搭建
    现代 CSS 解决方案:CSS 数学函数
    HTML-DAY2
    CSS 基础知识-01
    java: 无效的目标发行版: 17 问题解决
    驱动开发:内核RIP劫持实现DLL注入
    论文复现笔记
    【面向对象依赖关系概念总结】面向对象程序设计的五种依赖关系
  • 原文地址:https://blog.csdn.net/m0_64839851/article/details/126562340