2 条题解

  • 0
    @ 2025-10-8 17:01:20
    #include <bits/stdc++.h>
    using namespace std;
    int a[100], L[10], R[10];
    int main()
    {
        int n, x; scanf("%d%d", &n, &x);
        a[1] = 1; for(int i=2; i<=n; i++) a[i] = a[i-1] * 3;
        //考虑到每个砝码有三种用法:不用,放左边,放右边,由此联想到三进制
        for(int i=1; i<=n; i++) printf("%d ", a[i]);
        printf("\n");
    
        a[n+1] = a[n] * 3;
        int s = x, l = 0, r = 0;
        for(int i=1; i<=n; i++)
        {
            if((s + a[i]) % a[i+1] == 0)
            {
                L[++l] = a[i];
                s += a[i];
            }
            else if((s - a[i]) % a[i+1] == 0)
            {
                R[++r] = a[i];
                s -= a[i];
            }
        }
        printf("%d", x);
        for(int i=1; i<=l; i++) printf("+%d", L[i]);
        printf(":");
        for(int i=1; i<r; i++) printf("%d+", R[i]);
        printf("%d\n", R[r]);
        return 0;
    }
    
    • 0
      @ 2025-10-8 17:01:09
      #include<bits/stdc++.h>
      using namespace std;
      int a[100],L[10],R[10];
      int main()
      {
          int n,x;scanf("%d%d",&n,&x);
          a[1]=1;for(int i=2;i<=n;i++)a[i]=a[i-1]*3;
          //考虑到每个砝码有三种用法:不用,放左边,放右边,由此联想到三进制
          for(int i=1;i<=n;i++) printf("%d ",a[i]);
          printf("\n");
      
          a[n+1]=a[n]*3;
          int s=x,l=0,r=0;
          for(int i=1;i<=n;i++)
          {
              if((s+a[i])%a[i+1]==0)
              {
                  L[++l]=a[i];
                  s+=a[i];
              }
              else if((s-a[i])%a[i+1]==0)
              {
                  R[++r]=a[i];
                  s-=a[i];
              }
          }
          printf("%d",x);
          for(int i=1;i<=l;i++)printf("+%d",L[i]);
          printf(":");
          for(int i=1;i<r;i++) printf("%d+",R[i]);
          printf("%d\n",R[r]);
          return 0;
      }
      • 1

      信息

      ID
      2556
      时间
      1000ms
      内存
      128MiB
      难度
      5
      标签
      递交数
      71
      已通过
      26
      上传者