首页 > 其他分享 >Acwing语法基础

Acwing语法基础

时间:2023-02-20 21:25:00浏览次数:40  
标签:arr nums int 基础 Solution 语法 vector input Acwing

862. 三元组排序 - AcWing题库

#include<iostream>
#include<algorithm>
#include<string>
using namespace std;
struct Triple{
    int x;
    float y;
    string z;
};
bool Compare(Triple a,Triple b){
    return a.x<b.x;
}

int main(){
    int N;
    cin>>N;
    Triple arr[N];
    for(int i=0;i<N;i++){
        cin>>arr[i].x>>arr[i].y>>arr[i].z;
    }
    sort(arr,arr+N,Compare);
    for(int i=0;i<N;i++){
        printf("%d %.2f %s \n",arr[i].x,arr[i].y,arr[i].z.c_str());
        //注意printf()的用法
        //用s.c_str()将string转化为char *s
    }
}

67. 数字在排序数组中出现的次数 - AcWing题库

//for each
class Solution {
public:
    int getNumberOfK(vector<int>& nums , int k) {
        int cnt=0;
        for(int x:nums){
            if(x==k){
                cnt++;
            }
        }
        return cnt;
        
    }
};

//迭代器
class Solution {
public:
    int getNumberOfK(vector<int>& nums , int k) {
        int cnt=0;
        vector<int>::iterator it;
        for(it=nums.begin();it!=nums.end();it++){
            if(*it==k) cnt++;
        }
        return cnt;
        
    }
};
// *a.eng()=a[n];
// *a.back()=a[n-1];
// *a.begin()=*a.front()=a[0];

32. 调整数组顺序使奇数位于偶数前面 - AcWing题库

class Solution {
public:
    void reOrderArray(vector<int> &array) {
       int l=0,r=array.size()-1;
        //array.size();
       while(l<r){
           while((l<r)&&array[l]%2==1) l++;
           while((l<r)&&array[r]%2==0) r--;
           if(l<r) swap(array[l],array[r]);
       }
    }
};

17. 从尾到头打印链表 - AcWing题库

class Solution {
public:
    vector<int> printListReversingly(ListNode* head) {
        vector<int> res;
        while(head){
            res.push_back(head->val);
            head=head->next;
        }
        return vector<int>(res.rbegin(),res.rend());
        //rbegin(),rend()反向迭代器;
    }
};
class Solution {
public:
    vector<int> getLeastNumbers_Solution(vector<int> input, int k) {
        int n=input.size();
        sort(input.begin(),input.end());
        vector<int> res;
        for(int i=0;i<k;i++){
            res.push_back(input[i]);
        }
        return res;
    }
};

class Solution {
public:
    vector<int> getLeastNumbers_Solution(vector<int> input, int k) {
        int n=input.size();
        sort(input.begin(),input.end());
        vector<int> res;
        vector<int>::iterator it;
        for(it=input.begin();it<input.begin()+k;it++){//不能写it<k
            res.push_back(*it);
        }
        return res;
    }
};

vector也可以用a[i]

75. 和为S的两个数字 - AcWing题库

class Solution {
public:
    vector<int> findNumbersWithSum(vector<int>& nums, int target) {
        set<int> s;
        for(int i=0;i<nums.size();i++){
            int find=target-nums[i];
            if(s.count(find)!=0) return vector<int>{find,nums[i]};
            //int n=target-nums[i];
            //if(s.find(n)!=s.end()) return vector<int>{n,nums[i]};
            s.insert(nums[i]);
        }
        return vector<int>();
    }
};

标签:arr,nums,int,基础,Solution,语法,vector,input,Acwing
From: https://www.cnblogs.com/coloratura/p/17138957.html

相关文章

  • 【牛客】1 基础语法
    VL1 四选一多路器`timescale1ns/1nsmodulemux4_1(input[1:0]d1,d2,d3,d0,input[1:0]sel,output[1:0]mux_out);//*************code***********//assignmux......
  • jQuery使用与语法
    jQuery安装1.从官网DownloadjQuery|jQuery下载安装;2.CDN在线加载:statisticCDN:https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js百度CND:https://apps.bdimg......
  • C语言语法大纲
    ......
  • vuecli创建项目-vue项目目录介绍-es6导入导出语法-小练习登录功能-scoped
    目录vuecli创建项目-vue项目目录介绍-es6导入导出语法-小练习登录功能-scoped今日内容概要今日内容详细1vue-ci创建项目2vue项目目录介绍3es6导入导出语法3.1App.vue,m......
  • Linux命令行基础
    1.Linux命令基础知识:Linux的GUI与CLIGUI是图形用户界面CLI是命令行界面为什么要使用Linux命令行?命令行更高效:Linux系统中使用键盘操作速度要比鼠标更快。图形化界面......
  • acwing 截断数组
    原题链接题解分析s数组为前缀和数组,这里边录入边转换和能平均分为三份,意思是每一段的和都是s[n]/3先判断一下是否能被整除,分成三段,不能直接输出0,否则进行操作使用......
  • API测试基础之http协议
    http简介:http(超文本传输协议)是一个简单的请求-响应协议,它通常运行在TCP(传输控制协议)之上。它指定了客户端可能发送给服务器什么样的消息以及得到什么样的响应。请求和响应......
  • 【Vue】vue项目目录介绍 es6的导入导出语法 vue项目开发规范 Vue项目编写步骤
    目录昨日回顾今日内容0vue-cli创建项目node.js环境创建vue-cli项目1vue项目目录介绍node_modulesindex.htmlapp.vuepackage.jsonpackage-lock.json2es6的导入导出语法ma......
  • acwing 砖块
    原题链接题解分析这道题目使目标字符串变为同一颜色,也就使只有两种情况W/B因为操作时,操作i会将i+1也操作,所以总操作次数为n-1次如果不能变为全黑或全白也就是che......
  • 3、基础的数据结构
    1、单链表publicclassNode{publicintval;publicNodenext;publicNode(intvalue){this.val=value;}}1.1、单链表反转1.2、......