acm-求線型代數逆序數的代碼!

问题描述

求線型代數逆序數的代碼!

如輸入54321 逆序數是10????用c語言?????????????

解决方案

 #include<stdio.h>

int getResult(int* array, int dataNum);

int main()
{
    int array[105];
    int dataNum, i, res;
    while(true)
    {
        printf("请输入数据个数:n");
        scanf("%d", &dataNum);
        printf("请输入数据,以空格隔开:n");
        for(i = 0; i < dataNum; i++)
            scanf("%d", &array[i]);
        res = getResult(array, dataNum);
        printf("逆序数为:%dn", res);
    }
    return 0;
}

int getResult(int* array, int dataNum)
{
    int i, j, res = 0;
    for(i = 1; i < dataNum; i++)
    {
        for(j = 0; j < i; j++)
        {
            if(array[i] < array[j])
                res ++;
        }
    }
    return res;
}

解决方案二:

不好意思,回来晚了~
你要是想要的话就拿去测试吧~10位数以内应该是没问题的,自己改NUM就可以了~

#include<stdio.h>
#define NUM 10 //or whaterver you like 

int main() {
    int num,j,i=0,rev=0,count=0; //num is what you input,i and j is loop variable,rev is as output and count is the size of input num
    int array[NUM],temp_arr[NUM];

    printf("Please input the num whose reverse number is needed:n");
    scanf("%d",&num);

    int temp = num;               //Depart number as isolated num : 54321 -> 1 2 3 4 5 in array for instance
    while(temp/10 != 0) {
        temp_arr[i] = temp % 10;
        temp = temp / 10;
        i++;
    }
    temp_arr[i] = temp % 10;
    count = i + 1;

    j = count - 1;               //Change 1 2 3 4 5 -> 5 4 3 2 1 for instance
    for(i = 0;i < count;i++) {
        array[i] = temp_arr[j];
        j--;
    }

    for(i = 0;i < count-1;i++)        //Compare and compute rev as output
        for (j = i+1;j <count;j++) {
            if (array[i] > array[j])
                rev++;
        }

    printf("The corresponding reverse num is %d!n",rev);
    return 0;

}

时间: 2024-09-03 17:05:10

acm-求線型代數逆序數的代碼!的相关文章

指针-c++程序求教,strtok记号化句子,逆序输出,求大神

问题描述 c++程序求教,strtok记号化句子,逆序输出,求大神 #include using namespace std; #include using namespace std; char *t[50]; void print(char*tptr,char*tptrr,int i) { if(tptrr!=NULL) {t[i]=tptr;tptr=strtok(NULL," ");tptrr=strtok(NULL," ");print(tptr,tptr

c#窗体求阶乘逆序输出在另一个文本框,怎么做,求解答

问题描述 编写一个窗体应用程序,计算n的阶乘,显示其结果,同时,将结果逆序并显示在一个标签中.求代码! 解决方案 解决方案二:intr=1;intn=int.Parse(textBox1.Text);for(inti=2;i<n;i++)r*=n;label1.Text=r.ToString().Reverse();

java递归法求字符串逆序_java

本文实例讲述了java递归法求字符串逆序的方法.分享给大家供大家参考.具体实现方法如下: public static String reverseString(String x) { if(x==null || x.length()<2) return x; return reverseString(x.substring(1,x.length()))+ x.charAt(0); } 希望本文所述对大家的java程序设计有所帮助. 以上是小编为您精心准备的的内容,在的博客.问答.公众号.人物.课

算法题:poj 2541 Binary Witch(KMP水过,逆序转换)

链接: http://poj.org/problem?id=2541 分析与总结: 做这题估算了下复杂度,觉得无论KMP再怎么快,这题暴力也肯定要超时的. 想了很久也没想出个好办法,于是决定暴力之,但是TLE了....于是就放了几天.之后看了下discuss ,这题的正解应该是状态压缩dp,不过目前我还不懂,跪了. 之后百度发现也可以用KMP水过,虽然是因为数据水才过的,不过这种思路很巧妙,值得借鉴! 直接暴力是枚举字符串的后面13个的字母,然后再用KMP匹配,这样的话,就绪要枚举多次,分别是

c#-C#程序问题,,C#输入123456然后逆序输出,程序怎么写?

问题描述 C#程序问题,,C#输入123456然后逆序输出,程序怎么写? C#输入123456然后逆序输出,程序怎么写啊,求大神帮帮忙,自己刚学,实在写不来 解决方案 string s=""123456"";for(int i=s.Length-1;i>=0;i--)Console.Write(s[i]); 解决方案二: foreach (var p in numbers.Reverse()) { Console.WriteLine(p); } 解决方案三:

stringbuffer-字符串逆序输出,并判断前后是否相等

问题描述 字符串逆序输出,并判断前后是否相等 package lab10_4; /** * @author Administrator */ import java.util.Scanner; public class Lab10_4 { /** @param args the command line arguments */ public static void main(String[] args) { // TODO code application logic here Scanner

C语言OJ项目参考(2968)递归方法实现逆序

2968: 递归方法实现逆序 Description 你知道递归么?简单来说,递归就是函数自身对自身的调用,直到遇到终止条件,再对数据做逆向处理,下面就有一个递归的简单例子等你来处理. #include <stdio.h> void inverted(int); /*函数声明*/ int main() { int n; /*需要逆序的整数*/ scanf("%d",&n); inverted(n); /*调用逆序函数*/ return 0; } void inver

单链表的顺序-c++正序与逆序创建单链表有什么区别

问题描述 c++正序与逆序创建单链表有什么区别 c++正序与逆序创建单链表有什么本质的区别,逆序比顺序的优点体现在哪? 解决方案 逆序没什么特别的好处,给你学编程的时候练练手玩的,在实际的项目中会用到标准库,那是双向链表,没有逆序创建一说. 要说逆序的好处:当要加入新的数据时,不需要遍历链表,可以直接在头结点之后插入即可,减少时间复杂度 解决方案二: 没有太大价值吧......不过双向的链表应用很广泛 解决方案三: 逆序创建单链表

ORA FAQ 性能调整系列之——当索引第一列由序列产生,一个逆序索引有什么用?

索引|性能 ORA FAQ 性能调整系列之--The Oracle (tm) Users' Co-Operative FAQWhy would a reverse index be useful when the leading column of the index is generated from a sequence ?当索引第一列由序列产生,一个逆序索引有什么用?--------------------------------------------------------------