80 solutions

  • -9
    @ 2024-11-26 20:31:50
    再逢花开春意浓,
    看尽繁华梦未空。
    一世情缘如逝水,
    眼前星河心留痕。
    就似烈火燃希望,
    会当凌云破长空。
    爆竹声中迎蜕变,
    炸破旧梦迎新程。
    • -9
      @ 2024-11-26 19:49:37

      文心一言编写的同行列对角线的格

      #include <iostream>
      using namespace std;
      
      int main() {
          int n, i, j;
          cin >> n >> i >> j;
      
          // 输出同一行上的格子位置
          cout << "同一行上格子的位置:" << endl;
          for (int k = 1; k <= n; k++) {
              cout << "(" << i << "," << k << ") ";
          }
          cout << endl;
      
          // 输出同一列上的格子位置
          cout << "同一列上格子的位置:" << endl;
          for (int k = 1; k <= n; k++) {
              cout << "(" << k << "," << j << ") ";
          }
          cout << endl;
      
          // 输出左上到右下对角线上的格子位置
          cout << "左上到右下对角线上的格子的位置:" << endl;
          for (int k = 1; k <= n; k++) {
              int row = i - (i - 1) + k; // 从i开始,每次递增1
              int col = j - (j - 1) + k; // 从j开始,每次递增1(这里其实简化为k,但为了与下面的对称,保持这种形式)
              // 但由于我们只需要对角线上的点,且行列从1开始,所以只需考虑row=col的情况
              // 当k=1时,row=i, col=j(即起点),之后每次移动都是row和col同时增减(但在这个特定情况下,我们只需考虑增加)
              // 所以我们只需要检查row(或col,因为它们应该相等)是否不超过n
              if (row <= n && row == (i - (i - k) + (j - (j - k)))) { // 这里其实row==col+k-i+i-k==col(简化后)且row<=n
                  // 但由于我们是从i,j出发,所以只需考虑row从i开始且不超过n的情况
                  // 因此上面的条件可以简化为row==i+k-1且row<=n(但k从1开始,所以row从i递增到不超过n)
                  // 但为了与题目要求的对角线逻辑一致(虽然这里有些冗余),我们还是用row==col的形式来表示
                  // 不过由于我们已经知道起点是(i,j),所以直接计算col=i+k-j(当row=i+k-1时,因为row==col)
                  // 并检查col是否不超过n即可(但这里为了与下面的代码风格一致,我们还是用row来表示)
                  // 注意:这里的解释有些冗长和复杂,实际上只需知道从(i,j)出发,沿对角线移动即可
                  // 正确的简化逻辑应该是:直接计算对角线上的点(i+d, j+d)或(i-d, j-d),其中d是从0开始的偏移量
                  // 但由于我们已经知道起点,且只考虑正向对角线(即从左上到右下),所以只需(i+d, j+d)且d<n-i+1且d<n-j+1
                  // 但为了与题目和下面的代码一致,我们还是用下面的形式来表示
                  int actualCol = i + k - 1 - (i - 1); // 简化后为k(因为是从i开始)但这里为了与row的计算形式一致而写成这样
                  if (actualCol == j + k - 1 - (j - 1) && actualCol <= n) { // 实际上只需检查row(或col)是否不超过n且row==col(在这里的形式下)
                      // 但由于上面的计算已经保证了row==col(当从(i,j)出发时),所以我们只需检查是否不超过n
                      cout << "(" << row << "," << actualCol << ") "; // 这里actualCol其实等于row,但为了与上面的计算一致而保留
                  }
                  // 注意:上面的条件判断有些冗余,实际上只需检查row(或col)的值即可
                  // 正确的简化应该是直接输出(i+k-1, j+k-1)且k从1递增到使得i+k-1和j+k-1都不超过n为止
                  // 但为了与题目要求和下面的代码风格一致,我们还是保留了上面的形式
                  // 下面的代码将直接采用简化的逻辑来输出对角线上的点
                  // 实际上,从(i,j)出发的对角线上的点应该是(i+d, j+d),其中d是从0到某个值的范围
                  // 所以我们可以直接这样计算并输出:
                  cout << "(" << i + k - 1 << "," << j + k - 1 << ") "; // 正确的对角线输出逻辑
                  // 注意:上面的输出中,我们直接计算了对角线上的点,而没有使用上面的冗余判断
                  // 这是因为我们已经知道起点是(i,j),且只考虑正向对角线(从左上到右下)
                  // 所以我们只需从i和j开始,每次同时增加相同的值(即d),直到达到或超过n为止(但不超过的部分才是有效的点)
              }
              // 注意:上面的解释部分是为了展示思考过程,实际代码中应该直接采用简化的逻辑来输出对角线上的点
              // 下面的代码将直接跳过上面的冗余部分,并正确输出对角线上的点
          }
          // 注意:上面的循环中,我们实际上多输出了一些不必要的判断和解释
          // 为了简洁和正确,我们应该直接这样输出对角线上的点:
          for (int d = 0; i + d <= n && j + d <= n; d++) { // d表示从(i,j)出发的偏移量
              cout << "(" << i + d << "," << j + d << ") "; // 直接计算并输出对角线上的点
          }
          // 注意:上面的循环才是正确的对角线输出逻辑,它直接计算了从(i,j)出发的对角线上的所有点
          // 并输出了它们的位置。之前的循环和判断是为了展示思考过程,实际代码中应该采用这个简化的逻辑。
          cout << endl; // 输出换行符以分隔不同的输出部分
      
          // 输出左下到右上对角线上的格子位置(注意这里的逻辑与上面类似,但方向相反)
          cout << "左下到右上对角线上的格子的位置:" << endl;
          for (int d = 0; i - d >= 1 && j + d <= n; d++) { // d表示从(i,j)出发的偏移量(但这次是向左下方向偏移的负值,但在计算中我们取正值,并在输出时调整行列)
              cout << "(" << i - d << "," << j + d << ") "; // 直接计算并输出对角线上的点(注意行列的调整)
          }
          // 注意:上面的循环正确地输出了从(i,j)出发的左下到右上对角线上的所有点
          // 它通过调整d的值来遍历对角线上的所有点,并输出了它们的位置。
          cout << endl; // 输出换行符以结束程序输出。
      
          return 0;
      }
      
      • -9
        @ 2024-10-19 9:10:31

        #include<bits/stdc++.h> using namespace std; const int N=15; int a[N][N]; int main(){ int n; cin>>n; for(int i=0;i<n;i++){ for(int j=0;j<n;j++){ int cnt=1; for(int k=0;k<=i+j;k++){ if(k==0) cnt=1; else cnt*=2; } cout<<cnt<<" "; } cout<<endl; } return 0; }

        • -9
          @ 2024-10-5 11:32:10

          • -10
            @ 2025-3-22 13:46:43

            彩蛋挖掘者

            • -10
              @ 2024-11-27 20:08:50
              #include<bits/stdc++.h>
              using namespace std;
              int main()
              {
              	srand((int)time(0)); //产生随机种子 
              	while(1) //死循环 
              	{
              		cout<<char(rand()%50+60)<<" "; //产生一个60到109的ascii 
              	}
              	return 0;
              }
              
              
              • -10
                @ 2024-11-26 20:57:25
                不计前程多风雨,
                要怀壮志破云烟。
                装腔作势非真我,
                逼仄之境难久延。
                越山跨海寻真理,
                装点人生绘新篇。
                越古超今展豪情,
                逼人风采映乾坤。
              • -10
                @ 2024-11-26 20:43:10
                厚德载物心如镜,
                颜容虽老志犹青。
                无畏前行披荆棘,
                耻于后退失豪情。
                • -10
                  @ 2024-11-26 20:41:21
                  鸡鸣报晓迎新晨,
                  你如朝阳照我心。 
                  太虚浩瀚藏奥秘,
                  美景如画共赏寻。
                  • -10
                    @ 2024-11-26 20:37:30
                    我思珍宝遍天涯,
                    要寻奇物不辞劳。
                    金光闪耀如日辉,
                    坷途历险志愈高。
                    垃中寻宝心不倦,
                    • -10
                      @ 2024-11-23 11:55:03
                      #include<iostream>
                      using namespace std;
                      int main()
                      {
                          cout<<"Hello,World!";
                          return 0;
                      }
                      
                      • -10
                        @ 2024-11-23 9:48:51

                        优美的c语言


                        • -10
                          @ 2024-11-6 18:31:07

                          • -10
                            @ 2024-11-2 16:02:53

                            • -10
                              @ 2024-11-2 16:02:23

                              • -10
                                @ 2024-7-10 9:44:25

                                image

                                • -11
                                  @ 2025-1-18 15:09:22

                                  • -11
                                    @ 2025-1-11 10:20:26

                                    a

                                    • -11
                                      @ 2024-11-26 20:58:55

                                      南村群童欺我老无力,一肘击飞二里地!!!

                                      • -12
                                        @ 2025-1-4 10:17:07
                                        #include<bits/stdc++.h>
                                        using namespace std;
                                        int gcd(int a,int b)
                                        {
                                            if(b==0) return a;
                                            return gcd(b,a%b);
                                        }
                                        int main()
                                        {
                                            int t,m;
                                            cin>>t>>m;
                                            for(int i=1;i<=t;i++)
                                            {
                                                int a,b,c;
                                                cin>>a>>b>>c;
                                                double delta=b*b-4*a*c;
                                            	if(delta==0)
                                                {
                                                    int p=-b,q=2*a;
                                                    int k=gcd(p,q);
                                                    p/=k;q/=k;
                                                    if(q<0)
                                                    {
                                                        p=-p,q=-q;
                                                    }
                                                }
                                                else
                                                {
                                                    int p=-b,q=2*a;
                                                    int sd=sqrt(delta);
                                                    if(sd*sd==delta)
                                                    {
                                                        if(q<0)
                                                        {
                                                            p=-p,q=-q;
                                                        }
                                                        p+=sd;
                                                        int k=gcd(p,q);
                                                        p/=k;
                                                        q/=k;
                                                        if(q<0)
                                                        {
                                                            p=-p,q=-q;
                                                        }
                                                        
                                                    }
                                                    else
                                                    {
                                                        int k=gcd(p,q);
                                                        p/=k;
                                                        q/=k;
                                                        if(q<0)
                                                        {
                                                            p=-p;
                                                            q=-q;
                                                        }
                                                        int d1=1,d2=delta;
                                                        int q=abs(2*a);
                                                        for(int i=sd;i>=1;i--)
                                                        {
                                                            int j=i*i;
                                                            if(d2%j==0)
                                                            {
                                                                d2/=j;
                                                                d1*=i;
                                                                break;
                                                            }
                                                        }
                                                        k=gcd(d1,q);
                                                        d1/=k;
                                                        q/=k;
                                                    }
                                                }
                                            }
                                        	cout<<"Hello,World!";
                                            return 0;
                                        }
                                        

                                        Information

                                        ID
                                        838
                                        Time
                                        1000ms
                                        Memory
                                        256MiB
                                        Difficulty
                                        1
                                        Tags
                                        # Submissions
                                        772
                                        Accepted
                                        135
                                        Uploaded By